第一步:安装rvm,
不管需不需要升级ruby,rvm可以让你拥有多个版本的Ruby,并且可以在多个版本之间自由切换。如果已经安装过跳到第2步(rvm -v 查看是否安装)
curl -L get.rvm.io | bash -s stable
//需要等一会
source ~/.bashrc
source ~/.bash_profile
rvm -v
如果能显示版本好则安装成功了。
第二步:安装ruby
CocoaPods目前安装需要Ruby的版本大于2.2.2,不然会报错:Error installing pods: activesupport requires Ruby version >= 2.2.2。目前Mac系统默认自带是2.0,所以需要升级。
查看已安装的ruby:
rvm list
如果已安装版本大于2.2.2,直接到第3步。
ruby -v //也可以查看ruby版本
//列出ruby可安装的版本信息
rvm list known
rvm install 2.2.2 //安装一个ruby版本
第三步:更换源
我们需要来修改更换源(由于国内被墙)所以要把源切换至ruby-china在终端执行以下命令
目前网上文章大都是这面这种:
sudo gem update --system
gem sources --remove https://rubygems.org/
//等有反应之后再敲入以下命令
gem sources -a https://ruby.taobao.org/
这里是个大坑:会报错_connect returned=1 errno=0 state=SSLv3 read servercertificateB:certificate verify failed (https://ruby.taobao.org/specs.4.8.gz)
这是因为taobao Gems 源已停止维护,现由 ruby-china 提供镜像服务,正确的操作是:
sudo gem update --system
gem sources --remove https://rubygems.org/
gem sources --remove https://ruby.taobao.org/ //如果安装了淘宝的镜像
//等有反应之后再敲入以下命令
gem sources -a https://gems.ruby-china.org/
为了验证你的Ruby镜像是并且仅是ruby-china,可以用以下命令查看:
gem sources -l
只有在终端中出现下面文字才表明你上面的命令是成功的:
*** CURRENT SOURCES ***
https://gems.ruby-china.org/
# 确保只有 gems.ruby-china.org
第四步:安装CocoaPods
sudo gem install -n /usr/local/bin cocoapods
为了确定CocoaPods是否可以使用,可以用CocoaPods的搜索功能验证一下。在终端中输入:
pod search AFNetworking
创建PodFile
我们先创建这个神奇的PodFile。在终端中进入(cd命令)你项目所在目录,然后在当前目录下,利用vim创建Podfile,运行:
vim Podfile
然后在Podfile文件中输入以下文字:
需要注意的是podfile里面输入的格式变了。
platform :ios, '8.0'
target '你的项目名称' do
pod 'AFNetworking', '~> 3.1.0'
end
然后保存退出。vim环境下,保存退出命令是:
:wq
这时候,你会发现你的项目目录中,出现一个名字为Podfile的文件,而且文件内容就是你刚刚输入的内容。注意,Podfile文件应该和你的工程文件.xcodeproj在同一个目录下。
这时候,你就可以利用CocoPods下载AFNetworking类库了。还是在终端中的当前项目目录下,运行以下命令:
pod install
然后终端指令 pod install
出现错误([!] Unable to add a source with url `https://github.com/CocoaPods/Specs.git` named `master`.
You can try adding it manually in `~/.cocoapods/repos` or via `pod repo add`.)
解决:参考某网友http://my.oschina.net/jjtm/blog/492083,可能xcode重复安装,校正xcode的目录
输入命令 sudo xcode-select -switch /Applications/Xcode.app
再执行 pod update --no-repo-update
这时候又出现错误([!] The dependency `SnapKit (~> 0.15.0)` is not used in any concrete target.
解决:参照 http://blog.csdn.net/sjl_leaf/article/details/50506057
把Podfile中的内容修改为:
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!
target 'WeiboSwift' do
pod 'SnapKit', '~> 0.15.0'
end
再执行一次 pod install,就成功啦
pod install
问题
[!] Error installing AFNetworking
[!] /usr/bin/git clone https://github.com/AFNetworking/AFNetworking.git /var/folders/r4/v_csswx54f5_wr55pwgcd_f40000gn/T/d20170219-7247-u0gdkn --template= --single-branch --depth 1 --branch 3.1.0
Cloning into '/var/folders/r4/v_csswx54f5_wr55pwgcd_f40000gn/T/d20170219-7247-u0gdkn'...
fatal: unable to access 'https://github.com/AFNetworking/AFNetworking.git/': SSLRead() return error -9806
解决
pod install --verbose --no-repo-update
无论是执行pod install还是pod update都卡在了Analyzing dependencies不动
原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库,加一个参数可以省略这一步