一、安装
前言:
本人macbook pro,系统10.12.1,之前用的好好的,突然就不能用了,需要在项目中添加新的第三方库,YYKit,在Podfile里加上,在终端里输入pod update竟然提示出错,但只要不修改podfile不执行update,项目照常运行。
由于这个问题解决了两天,头都大了,网上的方法我挨着都试了,结果总算是成功了,但你让我从头说我真心是不记得是怎么一步一步解决的,就是看到有方法就试了,只能把我记得的试过的方法都写上,能帮到你就最好了,可能这些方法你从其他地方见过,我就是查了很多资料,基本是挨着试的,都是用的别人说的方法,现在只是整合了一下哈,如果有的步骤你执行过了就自动跳过,(在你实在没有办法的时候才试我的方法吧,不敢保证会不会让你的问题更严重,哈哈),开始进入正题:
$ sudo gem uninstall cocoapods
$ gem list --local | grep cocoapods
会列出如下信息:
cocoapods-core (0.39.0)cocoapods-downloader (0.9.3)
cocoapods-plugins (0.4.2)
…………
3、接着手动逐个删除:(等提示删除成功再接着删下一个,别急)
$ sudo gem uninstall cocoapods-core$ sudo gem uninstall cocoapods-downloader
注:也可能有的是多个版本,你执行上面的命令后会让你选择,选3就可以了,就是删除所有版本。
4、接下来升级RVM,命令如下:(这是个管理ruby的东西,你知道CocoaPods是用Ruby写的,并划分成了若干个Gem包(我也是看别人这么说)就行了)
5、接下来会有error信息,大致是你没有权限执行这个操作,换成下面的命令:
$ sudo gem update —system注:可能要输入你的开机密码。然后等着,最后输出大致是 RubyGems system software updated………这说明升级完成了,如果是其他的,可能是你没安装?还是怎样?
6、接下来是安装RVM:
$ curl -L https://get.rvm.io | bash -s stable注:这个可能需要等待着,有百分比的进度,你别急,去忙别的就好了。
7、最后我也不记得是装完了还是之前装过,反正最后查看了它的版本信息,命令如下:
$ rvm -v 输出了rvm的版本信息,说明正确安装了。
$ ruby -v(试试该命令),正常的话会输出你的ruby版本信息。$ gem -v 会输出版本号。
$ gem sources -l
正常的输出结果:
CURRENT SOURCES
http://ruby.taobao.org/
9、如果不是,你可以:
$ gem source -r https://rubygems.org/
$ gem source -a https://ruby.taobao.org/
10、然后再查一次:
$ gem sources -l
应该就是上面的输出结果了。
11、然后安装cocoapods
$ sudo gem install cocoapods
注:(这个过程有的快有的慢,不要急),顺利的话会输出很多东西,具体什么忘记了。
12、然后执行如下命令:
$ pod setup
注: (这个是最心累的一行命令,我前前后后执行了N多次,都是停在那个地方,一动不动),其实,这一步看起来一直停留在Setting up CocoaPods master repo这一句,其实它是在执行下载安装的过程,你最好再打开个终端窗口跟踪下载进度,心累程度还能小些,哈哈。
13、跟踪方法如下:
$ cd ~/.cocoapods$ du -sh *
注:结果显示0 repos,说明没有安装成功,那就要重新安装了,苦逼的回到安装的第一步重新来吧。
我有几次查,一直是56k repos,一直不变,最后这边报错后再去查又成0 repos了,所以正常情况下应该是一直在增加的,你就一直用du -sh *查着就行了,有的人说总共有130多M,我等到130M的时候兴奋死了,谁知道到了之后还在增加,反正我的最后是288M左右,苦逼的等了将近3个小时,一直在跟踪着,过程真是让人生无可恋。
14、最后总算是成功了,我是pod update了一下,成功了。
你也可以执行pod search AFNetworking,如果输出跟AFNetworking相关的信息,那就恭喜了成功了。
二、Cocoapods升级
1、安装
$ sudo gem install -n /usr/local/bin cocoapods --pre
$ pod setup
注:不能使用 $ sudo gem install cocoapods 否则会报错 『Operation not permitted - /usr/bin/xcodeproj』,此时运行,可能会有某些第三方库文件找不到,再更新下就OK了。
2、更新
$ pod update --verbose --no-repo-update
三、相关报错
如果等了那么久结果还是报错,那你可以看看下面的错误信息里有没有跟你一样的,你可以直接复制了关键的错误信息去百度,会有很多大神告诉你解决办法,挨着试吧。这里列出几个问题:
1、fatal: unable to access 'https://github.com/Homebrew/homebrew/': SSLRead() return error -36
Failed during: git fetch origin master:refs/remotes/origin/master -n --depth=1
解决:这个问题我尝试的方法是切换Git URL方式,一般情况下我们的都是https方式,切换为SSH方式试试:
$ git remote set-url origin https://github.com/USERNAME/OTHERREPOSITORY.git
注:两种方式的互换方法,点击这里:切换项目的clone地址(URL方式)
2、[!] /usr/bin/git clone http://git.oschina.net/akuandev/Specs.git master
解决方法:
$ sudo xcode-select -switch /Applications/Xcode-beta.app/Contents/Developer
注:switch 后面的 你在应用程序里找到你最新的Xcode,右击显示包内容,拖动Developer到终端,switch后面要有空格哈。这个执行的很快,然后你再重新执行pod setup下试试。
3、如果你执行pod相关的任何命令,输出了一堆路径,提示找不到什么函数之类的,建议你重装cocoapods。