CocoaPods引入第三方库冲突
2022-08-30 本文已影响0人
傲骨天成科技
日常开发中我们可能遇到使用cocoapods的时候第三方库冲突的一些问题,下来我大致总结了几种情况:
一、 某一个库依赖了你目前添加的库,但是你目前引入的此库的版本号和另外一个库依赖的此库版本号不一样。
例如:
image.png当自己引入的MBProgressHUD库是 ~> 1.0.0版本的时候,但是MWPhotoBrowser里面依赖的MBProgressHUD库是~>0.9的时候发生了冲突。
解决方法
- 首先查看MWPhotoBrowser库有没有相应的升级,如果有就使用新的
- 降级自己的依赖库MBProgressHUD为 >= 0.9
版本号介绍
- pod ‘ MBProgressHUD’ //不显式指定依赖库版本,表示每次都获取最新版本
- pod ‘ MBProgressHUD’, ‘2.0’ //只使用2.0版本
- pod ‘ MBProgressHUD’, ‘> 2.0’ //使用高于2.0的版本
- pod ‘ MBProgressHUD’, ‘>= 2.0’ //使用大于或等于2.0的版本
- pod ‘ MBProgressHUD’, ‘< 2.0’ //使用小于2.0的版本
- pod ‘ MBProgressHUD’, ‘<= 2.0’ //使用小于或等于2.0的版本
- pod ‘ MBProgressHUD’, ‘~> 0.1.2’ //使用大于等于0.1.2但小于0.2的版本
- pod ‘ MBProgressHUD’, ‘~>0.1’ //使用大于等于0.1但小于1.0的版本
- pod ‘ MBProgressHUD’, ‘~>0’ //高于0的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本
二、iOS项目中引用多个第三方库引发文件名重复问题
方案1:
iOS项目中引用多个第三方库引发冲突的解决方法
在Build Settings->Other link flags中添加-dead_strip,如果Other link flags中有-all_load与-force_load则删掉,只填-dead_strip