去年下半年开始用CocoaPods管理第三方库,都是一些很基本的用法,而且也都能正常使用。最近有个新项目需要继承learncloud的chatkit。通过pod search查看这个项目,发现它的版本号比官网上作者写的版本号要低很多,也没有在意,就pod下来用了。但开发到一半,实在是走不下去了,代码实在太旧,新功能都没有涉及到,无奈,只能通过各种方式查找原因。原因就是本地的CocoaPods太旧,要先把repo更新一下才能正常获取那些第三方库的最近代码,然后先执行“pod repo update”,后面就可以正常使用了。
------------------------------------------------------
升级本地 CocoaPods 源
`CocoaPods 有一个中心化的源,默认本地会缓存 CocoaPods 源服务器上的所有 SDK 版本。
如果搜索的时候没有搜到或者搜不到最新版本,可以执行以下命令更新一下本地的缓存。
pod repo update
升级工程的Pod版本
更新您工程目录中 Podfile 指定版本后,在终端中执行以下命令。
pod update
清除 Cocoapods 本地缓存
特殊情况下,由于网络或者别的原因,通过 CocoaPods 下载的文件可能会有问题。
这时候您可以删除 CocoaPods 的缓存(~/Library/Caches/CocoaPods/Pods/Release 目录),再次导入即可。
------------------------------------------------------
最近公司新启动了一个项目,为了跟上主流,我也着手使用cocoapods来管理一些第三方库,一切都很顺利,在公司的电脑也是用的得心应手,后来在家里想把这个项目的代码也弄一份到个人电脑上,就部署了cocopods的环境,但很奇怪,在执行pod install的时候,总是失败,提示“Attempt to read non existent folder”,在网上也查找了很多的资料,比如重装cocopods的,还有pod repo路径更换的方法都尝试了,但是这个问题始终没有得到解决。就在今天准备放弃去睡觉的时候,我突然察觉到了这个项目路径所在的文件夹命名不太对劲,原本是”ios-workspace“,其中的“-”符号是中文格式的那个符号,想起以前做J2EE时在中java项目环境中遇到一些关键路径如果用中文或者中文符号命名的话总会出现一些奇奇怪怪难以解释的坑的时候,就抱着尝试的心态将“-”符号换成英文符号的“-”,结果pod install成功了.....:)泪奔(这些东西毕竟是老外写的),终于搞定了,就分享出来,希望有遇到同样情况的同学能及早从这么白目的坑中跳出来。当然,如果和我的情况不一样的话,能可以参考下面的这些连接,毕竟都是前辈们的经验,希望对大家有所帮助:
http://blog.csdn.net/liuitcast/article/details/51915150
http://www.jianshu.com/p/c6d6bf7417b8