CocoaPods天天用,但是不会天天安装,所以在此记录一下安装步骤。本文比较详细的记录了最新的安装过程,仅供参考。第一步可以省略,直接第二步开始就行。出现问题了再照着第一步来。我参考的一些文章也会附在文章末尾,感谢各位作者。
第一步:升级MacOS自带的Ruby(新系统可不升级,直接第二步)
1. 安装Xcode Command Line Tools
xcode-select --install
如果已经安装了,会报错,显示already installed。
2. 安装RVM,用来升级Ruby
RVM: Ruby Version Manager.中文为Ruby版本管理器,包括Ruby的版本管理和Gem库管理
curl -L get.rvm.io | bash -s stable
验证RVM是否安装成功: 关闭当前命令窗口,打开一个新的窗口(加载安装好的文件),查看版本,如果有版本号,就是安装好了
rvm -v
3.安装Homebrew
一个MacOS的套件,安装过程中需要输入一次回车键和验证系统登录用户密码。
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
4.查看当前ruby版本,获取rvm列表
会显示当前已经安装的版本号,MacOS默认已经安装了一个
ruby -v
获取rvm列表,列表里会显示最新版Ruby版本
rvm list known
5.安装最新版Ruby
根据rvm列表里# MRI Rubies一栏里显示的的Ruby版本号,比如要安装最新的2.4版本,命令如下:
rvm install 2.4
安装过程中会自动查找和下载依赖包,根据不同的网速,可能需要的时间较长。如果下载失败了,可以多试几次或者开VPN试试。
附1: 卸载Ruby的方法
Ruby可以同时安装和存在多个不同的版本,如果你有多个版本,或者安装了错误版本,要删除一个,命令如下:
获取版本列表
rvm list
卸载其中一个版本,注意不要写错版本号
rvm remove 2.4
附2: 可能出现的问题
Error running '__rvm_make -j 1',showing last 15 lines of /Users/GDarkness/.rvm/log/1474100434_ruby-2.2.4/make.log
安装xcode command line 即可解决
xcode-select --install
第二步:升级RubyGems版本和更改gem源
1.升级RubyGems版本
输入下面命令,系统会让你输入登录用户密码。如果已经是最新版了,就会提示已经最新,并自动忽略更新
sudo gem update --system
查看一下gem版本,要2.6以上才可以,现在是2.7.8。
gem -v
2.更改gem源
淘宝的gem源已经不维护了,现在是官方论坛在维护,地址https://gems.ruby-china.com/,先看一下当前的gem源
gem sources -l
如果你没有改过源的话,默认应该是https://rubygems.org/,你只需输入下面一个命令就可以了
gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/
如果你已经改过了,比如改成了淘宝的网址了,那你把修改后的地址替换上面的命令里的“https://rubygems.org”字段,然后回车即可。
重新看一下gem源,确保只有一个,https://gems.ruby-china.com/。
gem sources -l
第三步:安装CocoaPods
1.安装CocoaPods
很多同学都是直接从这一步开始的,一般也没啥问题,如果有啥问题,重复上面两步试试。
sudo gem install cocoapods
验证是否安装成功。如果出现版本号,比如1.5.3,那就是安装成功了。如果出现ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /usr/bin directory.那你从第一步开始吧,可能是系统自带的ruby权限不够,没仔细研究。
pod --version
如果没有出现版本号或安装不成功,试试这个命令:
sudo gem install -n /usr/local/bin cocoapods
2.克隆specs
这一步会从github上clone specs内容,现在大约600M,根据网速不同,可能下载需要很久。地址:https://github.com/CocoaPods/Specs
注意这个下载貌似不能断点续传,所以你要是去吃饭或者离开电脑的时候注意把系统偏好设置里的节能关掉,否则睡眠了,断网了,可能会卡住不动,如果这样,则关闭命令行工具,重新输入命令开始即可。最新版Pod有下载进度可以看。
pod setup
如果出现绿色的Setup completed提示,说明CocoaPods已经安装并克隆specs成功了。
在本机的路径是/Users/你的用户名/.cocoapods/repos/master
附:MacOS 显示或隐藏所有文件
第一种,临时显示,使用快捷键Shift + Command + > (句号键),三个按键同时按。
第二种,命令行,如下
defaults write com.apple.finder AppleShowAllFiles Yes && killall Finder //显示隐藏文件
defaults write com.apple.finder AppleShowAllFiles No && killall Finder //不显示隐藏文件
3.导入第三方库
cd 项目文件夹
进入项目文件夹后,如果已经有了Podfile,并在同一文件夹路径下,执行导入命令即可
pod install
如果是全新项目,那么初始化pod并创建Podfile文件,命令行如下:
pod init
用文本编辑器打开Podfile,在"do ... end"之间输入所需第三方框架名和版本号,格式如下,
target 'RAC' do
# Uncomment the next line if you're using Swift or would like to use dynamic frameworks
# use_frameworks!
# Pods for RAC
pod 'ReactiveObjC', '~> 3.1.0'
end
然后重新执行pod install,完成后,用后缀名为.xcworkspace重新打开项目即可。
4.关于pod install和pod update的用法区别
简单区别如下,详细区别见官网文档http://guides.cocoapods.org/using/pod-install-vs-update.html
1.pod install:这个是将本地已经缓存的(也就是已经pod setup过的)第三方库直接安装,如果本地有第三方库,就安装,不会管库的版本,也不去网络下载,如果本地没有,那么就去网络下载一个,然后缓存到本地;
2.“pod update”:这个命令会直接跳本地缓存的第三方库,直接从网络上下载最新的。
3.“pod update --no-repo-update”:带参数更新,若添加后仅从本地Cocoapods库中查找SDK,不再更新线上SDK。如果本地存在SDK会直接使用本地SDK版本(不是线上最新版本),若本地不存在SDK会产生错误。
4.这两命令第一次执行时都会更新本地的库。
附1: 可能遇到的问题:
执行pod setup命令后可能出现以下错误提示,原因是从github下载specs库的时候网络出现了问题,比如电脑休眠了,断网了,或者连接到github不稳定,都可能导致这个问题,解决办法就是多试几遍pod setup命令
[!] /usr/bin/git clone https://github.com/CocoaPods/Specs.git master --progress
Cloning into 'master'...
remote: Counting objects: 1113291, done.
remote: Compressing objects: 100% (191/191), done.
error: RPC failed; curl 56 SSLRead() return error -980617.00 KiB/s
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
附2: 参考文章:
这几篇参考文章是最近几次安装的时候看的,当然一开始看的文章不止这几篇,而且这几篇也可能参考别的文章了,比如唐巧的博客,这个是真正的教程,本文只是个安装步骤,不是CocoaPods教程,所以不详细。
最后感谢CocoaPods开发者和维护者,谢谢各位!