如何为Pod库指定「latest」版本?能否用+/*等符号指定最新版?
如何为Pod库指定「latest」版本?
嘿,这个问题问得挺到位的!其实CocoaPods并没有提供latest、+或者*这类直接的标识来显式指定最新版本,但咱们有几种等价的方式能达到同样的效果,而且都是官方认可的做法:
直接省略版本号(官方推荐)
这就是你提到的文档里的方法,也是最简洁直观的方式。在Podfile里只写Pod的名称,不附带任何版本约束,每次执行pod install或pod update时,CocoaPods都会自动拉取该Pod的最新稳定版本。举个例子:pod 'AFNetworking'使用宽松版本约束(替代方案)
虽然不能用*,但你可以用>= 0这种无下限的版本约束,它会匹配该Pod的所有已发布版本,最终也会选最新的那个。不过这种写法不如省略版本号简洁,一般不推荐,但如果有特殊场景需要显式声明版本范围的话可以用:pod 'AFNetworking', '>= 0'关于预发布版本的说明
如果你想要拉取最新的预发布版本(比如带beta、rc标签的测试版),默认省略版本号的方式是不行的——它只会优先选择稳定版。这种情况下你需要要么通过:git指定Pod的仓库地址,要么使用~> x.y.z.pre这类针对预发布版本的约束写法。
顺便补充一句:CocoaPods的版本解析逻辑本身就是优先匹配满足约束的最高版本,省略版本号就相当于没有任何约束,自然会选中最新版,所以根本不需要额外的latest标识,省略版本号就是最标准的做法啦。
内容的提问来源于stack exchange,提问作者Adriano Di Giovanni
相关产品推荐
相关产品推荐

