美文网首页
升级cocopods1.6.1遇到的问题

升级cocopods1.6.1遇到的问题

作者: 青年别来无恙 | 来源:发表于2019-04-18 15:59 被阅读0次

    公司统一pod版本1.4.0,因为要在老项目中接入flutter,flutter依赖的pod必须在1.5.0以上,所以被迫升级。

    一、cocopods安装指定版本

    cocopods安装及升级的文章随便百度就能出来,这里不做多说~

    参考文章:

    cocospod 版本更新与更新到指定版本

    二、升级之后遇到的问题

    pod1.4.0项目podfile文件引用:

    本文引用demo为项目分享的本地组件化写的demo。其中用到友盟分享,在pod1.4.0版本没有出现任何问题,升级到1.6.1之后出现头文件找不到问题,如下:

    为此自己做了一系列排查:

    1、检查clean项目,删除pod库,重新pod install

    2、检查framework search paths路径,检查header search path路径

    3、升级UMCShare为最新版本

    均未排查出问题。

    最后,在主项目文件里引用#import <UMShare/UMShare.h>发现不会报错,但是在本地组件库里引用会出现'UMShare/UMShare.h' file not found的报错。

    于是猜想可能是自己组件化的过程存在问题,又是一顿排查。。。

    这是要逼死老夫啊~~

    最后定位到组件库的podspec文件:

    最后的依赖被注释掉,打开试了下,完美运行。。。。

    s.dependency表示当前podspec类库对外部第三方库的依赖.如果使用pod package打包sdk时候,这里的dependency会被自动添加前缀,防止重复引用冲突.而且这里的依赖只能是pod库(公有或者私有)的内容.

    后话:

    当时做组件化的时候为了方便依赖的库后期升级,所以把podspec里面的依赖去掉,采用podfile里面统一pod库的指定版本,结果埋下这么大的坑。。。

    感谢!

    相关文章

      网友评论

          本文标题:升级cocopods1.6.1遇到的问题

          本文链接:https://www.haomeiwen.com/subject/isbajttx.html