组件化开发2-安装cocoaPods
第一步:安装ruby
不能一上来就换ruby源。虽然mac自带了ruby,但是版本一般都偏低,如果不进行更新会导致版本依赖问题。
这里使用rvm来管理ruby,它允许共存多个ruby。RVM:Ruby Version Manager, Ruby版本管理器,包括Ruby的版本管理和Gem库管理(gemset)。通过以下命令来安装rvm:
$ curl -L get.rvm.io | bash -s stable $ source ~/.bashrc $ source ~/.bash_profile
完成后就可以通过以下命令来查看rvm是否安装成功了:
rvm -v
然后就可以用rvm来安装或者升级ruby了,首先查看一下ruby的版本
MacBook-Pro:~ zenglingfeng$ rvm list known # MRI Rubies [ruby-]1.8.6[-p420] [ruby-]1.8.7[-head] # security released on head [ruby-]1.9.1[-p431] [ruby-]1.9.2[-p330] [ruby-]1.9.3[-p551] [ruby-]2.0.0[-p648] [ruby-]2.1[.10] [ruby-]2.2[.6] [ruby-]2.3[.3] [ruby-]2.4[.0] ruby-head
可以看到标红的就是当前最新的版本了。然后通过以下命令来安装它
rvm install 2.4
安装好后将它设为默认版本
rvm use 2.4 --default
第二步:更改ruby源
升级好最新的ruby之后就可以更改ruby源了。
首先移除原有的墙外的源:
gem sources --remove https://rubygems.org/
然后添加目前最新的由ruby官方中国维护的源(注意:淘宝的源目前已经关闭不可再用):
gem sources -a https://gems.ruby-china.com/
然后确保当前只有这么一个源
MacBook-Pro:~ zenglingfeng$ gem sources -l *** CURRENT SOURCES *** https://gems.ruby-china.com/
然后进行ruby的组件更新:
sudo gem update --system
如果遇到报错
ERROR: While executing gem ... (OpenSSL::SSL::SSLError) hostname "upyun.gems.ruby-china.org" does not match the server certificate
可以尝试以下方法。
先把刚添加的源去掉,在重新添加一个源,把原地址最后的斜杠去掉:
gem sources --remove https://gems.ruby-china.org/ gem sources -a https://gems.ruby-china.org
第三步:安装cocoapods
sudo gem install -n /usr/local/bin cocoapods sudo xcode-select --switch /Applications/Xcode.app
在终端中输入如下命令来完成安装:
pod setup
它需要一点时间来完成,等就是了
如果安装失败 ~/.cocoapods 里面是空的,就需要重新setup
pod repo remove master
pod setup
最后如果出现Setup completed则说明安装完成了。
安装如果出现以下错误:
1- curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused
解决方法:更改hosts文件
(1)终端中输入:$ sudo vi /etc/hosts
(2)然后加上下面的这些IP地址配置,:wq保存退出即可
52.74.223.119 github.com 192.30.253.119 gist.github.com 54.169.195.247 api.github.com 185.199.111.153 assets-cdn.github.com 151.101.76.133 raw.githubusercontent.com 151.101.108.133 user-images.githubusercontent.com 151.101.76.133 gist.githubusercontent.com 151.101.76.133 cloud.githubusercontent.com 151.101.76.133 camo.githubusercontent.com 151.101.76.133 avatars0.githubusercontent.com 151.101.76.133 avatars1.githubusercontent.com 151.101.76.133 avatars2.githubusercontent.com 151.101.76.133 avatars3.githubusercontent.com 151.101.76.133 avatars4.githubusercontent.com 151.101.76.133 avatars5.githubusercontent.com 151.101.76.133 avatars6.githubusercontent.com 151.101.76.133 avatars7.githubusercontent.com 151.101.76.133 avatars8.githubusercontent.com