最近又要准备面试了,重新捡起来cocoapods,突然发现了这个问题,看了网上说的很多解释,但感觉总是差强人意,以下是我的一些见解和疑惑,遇到类似问题的同学可以一起参考讨论一下。
原因:
使用pod spec lint
检验私有库是否合法时,如果不指定source,则cocoapods会默认创建仓库trunk
,然后将使用到的依赖库的索引信息从远端拉到本地的trunk
仓库,用于校验。
当提交私有的pod到自己的私有仓库时,cocoapods会检查~/.cocoapods/repos/
下的索引,发现trunk
仓库中的索引和master
中的有重复情况,就会导致[!] Found multiple specifications
类问题的产生。
处理方法:
1)删除~/.cocoapods/repos/
路径下的trunk
仓库;
2)每次检查.podspec时,即使用pod spec lint
时,指定公共spec的source,http/https或git都可以,即pod spec lint --use-libraries --allow-warnings --sources='https://github.com/CocoaPods/Specs.git'
或pod spec lint --use-libraries --allow-warnings --sources='git@github.com:CocoaPods/Specs.git'
其他:
为什么每次检查.podspec时,cocoapods要把检查过的索引,单独放到一个仓库,是方便后续编译检查时,获取库不用查找全部spec文件么
关于`[!] Found multiple specifications`类问题的产生和处理方法
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 问题描述 环信的EaseUI的pod文件依赖于MWPhotoBrowser,而MWPhotoBrowser又依赖于...
- Github地址zhangxiaomeng1 (ZXM) · GitHub 正文目录 一. 创建公有Pod库 1、...
- 1.CocoaPods的安装 <已经了解CocoaPods的同学请直接跳到第3步或第4步> 1.1作用: 帮助管理...