程序媛iOS开发iOS开发 技术集锦

2017可用的CocoaPods安装教程

2017-09-22  本文已影响82人  林夕不昔

CocoaPods是什么?

当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等。可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而其他类库又用到其他类库,“子子孙孙无穷尽也”,这也许是比较特殊的情况。总之小编的意思就是,手动一个个去下载所需类库十分麻烦。另外一种常见情况是,你项目中用到的类库有更新,你必须得重新下载新版本,重新加入到项目中,十分麻烦。如果能有什么工具能解决这些恼人的问题,那将“善莫大焉”。所以,你需要 CocoaPods。

CocoaPods应该是iOS最常用最有名的类库管理工具了,上述两个烦人的问题,通过CocoaPods,只需要一行命令就可以完全解决,当然前提是你必须正确设置它。重要的是,绝大部分有名的开源类库,都支持CocoaPods。所以,作为iOS程序员的我们,掌握CocoaPods的使用是必不可少的基本技能了。

如何下载和安装CocoaPods?

不能一上来就换ruby源,虽然mac自带了ruby,但是版本一般比较低,如果不进行更新会导致版本依赖问题。

这里使用rvm来管理ruby,它允许共存多个ruby。RVM:Ruby Version Manager,Ruby版本管理器,包括Ruby的版本管理和Gem库管理。

通过以下命令来安装rvm:

$ curl -L get.rvm.io | bash -s stable  
$ source ~/.bashrc  
$ source ~/.bash_profile  

完成后就可以通过以下命令来查看rvm是否安装成功:

rvm -v  

然后就可以用rvm来安装或升级Ruby了,首先查看一下Ruby的版本:

MacBook-Air:~ xxxxx$ 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源了。

首先移除原有的墙外的源:

gem sources --remove https://rubygems.org/  

然后添加目前最新的由ruby官方中国维护的源:

gem sources -a https://gems.ruby-china.org/ 

然后确保当前只有这么一个源:

MacBook-Pro:~ xxxxx$ gem sources -l  
*** CURRENT SOURCES ***  
  
https://gems.ruby-china.org/ 

然后进行ruby的组件更新:

sudo gem update --system  

以上是多数网上比较权威的步骤,如果你跟着弄下来没有问题就没有问题了。

我跟着做下来的时候在update里一直会报这样一个错误:

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 
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则说明安装完成了。

原文链接

上一篇 下一篇

猜你喜欢

热点阅读