Cocoapods更新 ([!] The `master` repo requires CocoaPods 1.0.0 - (currently using 0.39.0))

想必大家和我一样,近段时间使用cocoapods,会有一个警告:

[!] The `master` repo requires CocoaPods 1.0.0 -  (currently using 0.39.0)


这句话的意思是:当前cocoapods版本太低(0.39.0),而现在要求的版本为1.0.0;

升级cocoa pods之前要先升级Ruby,升级Ruby之前要先升级RVM:(RVM:Ruby Version Manager,Ruby版本管理器,包括Ruby的版本管理和Gem库管理(gems))

按照网上的技术贴,先升级RVM:在终端输入 rvm -v,检测版本,可是终端显示:-bash: rvm: command not found :!!!excuse me,没有发现RVM,所以得先安装。但是所谓的技术贴并没有写怎么安装这个,直接进行下一步(PS:吐槽一下网上的攻略,几乎都是复制粘贴加转载。一篇一模一样的技术文,竟然有N个作者,醉了)




打不死的小强精神让我找到安装方法了:

安装RVM:

1.打开终端,输入:curl -L get.rvm.io | bash -s stable,根据当前网速,等待一段时间就可以安装好了,如下图:




2.监测安装的RVM版本:rvm -v 

3.用RVM升级Ruby

3.1.查看当前Ruby的版本ruby -v

3.2列出当前ruby的所有版本rvm list known  



3.3选一个最新的安装 ,在终端输入:rvm install 2.3.0(PS:网上很多人说最好安装2.2.0.可是我这里安装了2.3.0并无大碍)接下来就是等待,受网速影响 (有两处是需要按下回车键的,如下图。PS:下图中标注的是“空格”,实际是“回车”键!标注时马虎了)





这就算安装完最新的Ruby了,接下来就是安装最新的cocoapods

4.在终端输入:sudo gem install cocoa pods




4.1 在终端运行一连串命令后,你看到 xx gem installed就表示安装成功了(PS:xx是一个数字,我这里是25,其它电脑不一定,因电脑而异)

4.2 继续 在终端输入:

如果你的 OS X版本小于10.11:sudo gem install cocoa pods

OS X版本大于10.11sudo gem install -n /usr/local/bin cocoa pods 

(PS:二选一,大家可以看下面截图,两个命令的结果都一样。 But,据说,现在新版本都用后者,所以你们可以用后者);然后出现 xx gem installed就表示成功了 (同上,xx表示数字)


4.1与4.2图如下:





以上,就表示cocoa pods已经安装成功了,你可以 输入 pod 查看pods的版本 ,出现下图一样的代码 就是100% 成功了





5.接下来就是在项目中使用cocoapods了 (和旧版本大同小异,大家可以看我的旧版本帖子:http://blog.csdn.net/wyz670083956/article/details/51537632)

5.1 cd 项目路径 (cd 和路径中有空格),我这里的项目是CocoapodsTest

5.2 然后输入 pod init,然后项目中会出现白色的podfile文件

5.3 输入pod install 



出现上图 绿色代码表示成功了,打开工程文件,你会发现多了3个文件,按照绿色代码的要求,以后直接从xxxx.xcworkspace这个文件点击进去写代码


6.进入工程,打开Podfile文件,你会看到,新版本的Podfile文件和旧版本的不一样,有3个target‘xxx’ 

6.1 使用第三方库:进入pod file文件,在第一个target下写 pod’XXXX’,(PS:在podfile文件里可能有些程序员会在第三方库的后面加入版本号:pod'Masonry','~> 0.6.4’;这里可加可不加,不加的话,系统默认给你最新




然后在终端输入 命令:

pod install --no-repo-update (可以直接输入pod install )

pod update --no-repo-update (这句可不要,这命令主要是升级的作用)

这就成功的导入第三方库了,如下图:




7.接下来就是使用第三方库;如下图,在配置里新增一个值“$(PODS_ROOT)”,点击选择”recursive”,这样Xcode就会在项目目录中递归搜索文件且会自动找到Pods文件,就可以在项目中import第三方库的头文件了





问题1:

有个兄弟看了我的文章给我私信说了遇到的问题:更新、安装完Ruby(2.4.0)之后,准备安装cocoapods(sudo gem install cocoapods)遇到了一个问题:

ERROR:while executing gem ... (TypeError) 

incompatible marshal file format (cannot be read) 

format version 4.8 required;10.60 give  

如下图:




初期以为是Ruby版本过高的原因(因为网上大多数人建议安装2.2.0),后来发现,不是!最后解决的办法是,更换镜像(gem 源),众所周知,cocoapods是国外的东西,而我们身处天朝,所以要翻墙,以前是淘宝提供的镜像:https://ruby.taobao.org/  

现在淘宝不维护了,所以要改成:https://gems.ruby-china.org(传送门:http://www.tuicool.com/articles/aMRZBfy )

言外之意,就是你要重新开始装一遍cocoapods!把原来镜像是淘宝的那一步换掉就OK(重新开始怎么装,请看我另一篇博客:http://blog.csdn.net/wyz670083956/article/details/51537632)


PS:虽然用改变镜像的方法解决了这个问题,但是我依然觉得这不是根源,不过目前没发现更好的方法!!

PS:欢迎各位兄弟过来一起发现问题,讨论问题,解决问题!!!


问题2:

今天打开一个半年前的项目(那是cocoapods还没需要升级),我在终端升级导入的第三方库时,出现了错误:

[!] The dependency `Masonry` is not used in any concrete target.



注:此时的cocoa pods已经是升级过后的最新版

原因,因为新版的cocoa pods 的 Podfile文件有一个target,而旧版本灭有。所以我在Podfile文件里加了target 'xxx' do (xxx为你的工程名) 和对应的end,如下图;然后再在终端里cd路径,再依次 pod install ,pod update 即可


注:新版的Podfile文件里还有另外两个 target:建议不要加入,因为我加入后出现错误:工程里pods文件打不开



工程里 pods文件消失了



问题三:下载的代码因为pod问题无法运行

问题:从网上(githu、各种官网)下载下来的工程代码,有些因为编写年代久远,pod还没升级,所以无法运行,工程里的Pods.xcodeproj显示为红色

解决:在终端里cd路径,然后 pod update 即可(关掉工程再打开运行).




大写的注:

      这篇文章写得匆忙,很多东西没交代清楚,以后有时间会慢慢补上!!各位看官有更好的见解可与我分享,或者指出我的错误,谢谢! QQ:1296460793



  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值