牢骚(请忽略).....cocoapods已经安装N次了,每次都是昏天暗地,辛酸史能装一卡车!
这次还好花了半天时间终于亲手搞定了。这么多次的安装总结了这篇文章,希望曾和我一样被cocoapods搞的欲罢不能的“机油”少走点弯路。废话不多说下面开始。。。。。。
借鉴别人和自己的经验
1. 首先查看ruby是否是最新版的。ruby是通过rvm安装的所以需要先安装rvm后查看ruby是否是最新的(通过查看ruby版本列表来判断),在终端需要中输入以下命令:
1.1. 安装RVM.RVM:Ruby Version Manager,Ruby版本管理器,包括Ruby的版本管理和Gem库管理(gems)
curl -L get.rvm.io | bash -s stable
等待一段时间后就可以成功安装好 RVM
source ~/.bashrc
source ~/.bash_profile
测试是否安装正常
rvm -v
1.2. 用RVM升级Ruby
查看当前ruby版本
$ ruby -v
例如版本号:ruby 2.0.0
列出已知的ruby版本 --找到最新的版本安装
$ rvm list known
安装ruby 2.6.4
$ rvm install 2.6.4
2.1. 更换Ruby镜像--淘宝的那个镜像(https://ruby.taobao.org/ )已经不可用了。官方的需要FQ。
当然这个源在墙内是访问不到的。因此我们需要寻找一个可以在国内访问到的镜像。目前笔者找到的是http://rubygems-china.oss.aliyuncs.com这个阿里云的镜像,当然随着时间的推移,未来这个镜像也有可能无法访问了,到时候就只能重新寻找了。
确认镜像可用后,现在就要开始修改ruby源了。首先执行以下命令删除原来的ruby源:
$gem sources --remove https://rubygems.org/
执行命令后可在终端看见以下信息:
https://rubygems.org/ removed from sources
然后下一步添加你找到的可用的镜像源:
$gem sources -a http://rubygems-china.oss.aliyuncs.com
此时如果你再执行
gem sources -l
就能看到当前镜像源里只有阿里云这一个了。此时你就可以重新执行这一段开头的那句命令了:
$sudo gem install cocoa pods
如果一切正常,你应该能看到一段安装进度,以及最后有一条信息:
3 gems installed
2.2. 确认看见这条信息,后先判断的CocoaPods是否可以使用,可以用CocoaPods的搜索功能验证一下。在终端中输入:
pod search AFNetworking;
执行后可能会一直停在
Setting up CocoaPods master repo然后(很久)会出现如下错误:
解决办法是:
这说明CocoaPods还不能正常使用,需要更新pod,下载它的一些依赖包;在终端中输入:
$ pod setup
过一段时间之后,你会在终端中看到跟上面同样的红色的错误信息。
这说明某些环境原因导致pod更新不了,可能原因有,1)gem版本太低;2)github无法链接;3).cocoapods目录下的配置信息错误。我们可以一个一个来排除,
首先更新gem到最新版本,在终端中输入:
$ sudo gem update --system
然后检查是否可以ping通github,在终端中输入:
$ ping github.com
然后查看pob repo list:
$ pod repo list
说明Cocoapods在将它的信息下载到 ~/.cocoapods里;
cd 到该目录里,用du -sh *命令来查看文件大小,结果显示0 repos,说明没有安装成功;
在终端输入:
cd ~/.cocoapods
进入cocoapods文件后在终端输入:
du -sh *
重新执行pod setup,过一段时间后提示setup completed,在终端中输入 pod list,展示出安装列表;
这样总算安装好了。接下来再一次输入:
$ pod search AFNetworking
输入过后它可能会报:
解决方案是:
输入:
rm ~/Library/Caches/CocoaPods/search_index.json
后在一次输入:
pod search AFNetworking
就可以咯。
三,cocoapods的使用
首先来到你的项目文件:
cd到项目总目录
cd /Users/md098/Desktop/PodTest
然后,添加一个Podfile文件:
vim Podfile
然后按i进入插入模式,进行编辑,在文件中输入以下内容:
注意百度上很多旧版本输入的类容:
platform :ios, '8.1'
pod 'AFNetworking', '~> 2.0'
它会报:[!] The dependency AFNetworking (~> 3.0)
is not used in any concrete target.
现在版本升级官方给的文档是:
platform :ios, '8.0'
target '你的项目名称' do
pod 'AFNetworking', '~> 3.0'
end
输入完成后按ESC退出编辑模式,最后输入:wq保存并退出文件。此时可以发现在项目目录下多了一个Podfile的文件,请注意这个文件必须与.xcodeproj在同一目录下。
最后:
pod install
没报错就可以了。到这个地方就差不多了!
另外延伸
PS---如果使用的不是命令添加的三方库而是使用xcode安装的cocoapods插件,安装好cocoapods后。添加三方库后,点击Update pods会提示
这时候就要进入到项目
修改GEM_PATH:的路径了
打开终端输入
$
![Uploading 5_685387.png . . .]gem env
找到 - SHELL PATH:
修改Xcode的cocoapods插件里GEM_PATH:选项为上面得到的路径挨着试试吧
基本上就差不多了。。。。。。。可以项目试试。。。。。