cocoapos的安装和使用
首先安装 RVM
打开终端
$ curl -L https://get.rvm.io | bash -s stable
期间可能会问你sudo管理员密码,以及自动通过homebrew安装依赖包,等待一段时间后就可以成功安装好 RVM。
然后,载入 RVM 环境(新开 Termal 就不用这么做了,会自动重新载入的)
$source ~/.rvm/scripts/rvm
检查一下是否安装正确
$ rvm -v
如果出现跟下面类似的字符,则表明安装正确
rvm 1.27.0 (latest) by Wayne E. Seguin , Michal Papis [https://rvm.io/]
用 RVM 安装 Ruby 环境
列出已知的ruby版本
$ 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[.8]
[ruby-]2.2[.4]
[ruby-]2.3[.0]
[ruby-]2.2-head
ruby-head
可以选择现有的rvm版本来进行安装(假设以rvm 2.0.0版本的安装为例)
$ rvm install 2.0.0(可能需要管理员权限,使用sudo.$sudorvm install 2.0.0)
附加一些rvm操作方法
查询已经安装的ruby
$rvm list
卸载一个已安装版本
$ rvm remove 2.0.0
RVM 装好以后,需要执行下面的命令将指定版本的 Ruby 设置为系统默认版本
$ rvm 2.0.0 --default
同样,也可以用其他版本号,前提是你有用 rvm install 安装过那个版本
这个时候你可以测试是否正确
$ ruby -v
会出现ruby 2.0.0p481 (2014-05-08 revision 45883) [universal.x86_64-darwin14]类似字符
$ gem -v
2.6.3
更新gem
sudo gem update --system
这时候注意Ruby的默认源使用的是cocoapods.org,国内访问这个网址有时候会有问题,网上的一种解决方案是将远替换成淘宝的,替换方式如下:
$gem source -r https://rubygems.org/
$gem sources -a https://gems.ruby-china.com
报错:
Error fetching https://gems.ruby-china.org/:
bad response Not Found 404 (https://gems.ruby-china.org/specs.4.8.gz)
原因是 ruby-china 更换了域名
https://gems.ruby-china.com
命令替换为 gem sources --add https://gems.ruby-china.com 解决
要想验证是否替换成功了,可以执行:
$ gem sources -l
正常的输出结果:
*** CURRENT SOURCES ***
gem sources -a https://gems.ruby-china.org/
到这里就已经把Ruby环境成功的安装到了Mac OS X上
接下来就是CocoaPods的安装
这时候,你再次在终端中运行:
$ sudo gem install cocoapods
等上十几秒钟,CocoaPods就可以在你本地下载并且安装好了,不再需要其他设置。
当然我们也可以更新我们的CocoaPods,同样也是使用ruby的gem命令:
$sudo gem update cocoapods
然而你也可以更新CocoaPods的预览版,执行下面的命令:
$sudo gem update cocoapods--pre
其实就是执行sudo gem install cocoapods命令这么简单,但这一步是最容易出现坑的。
=========可能出现的状况(坑)=========
问题一:While executing gem ... (Errno::EPERM) Operation not permitted - /usr/bin/fuzzy_match 错误
解决方案 :
执行sudo gem install -n /usr/local/bin cocoapods 语句。然后提示gems installed即可。
问题二、Setting up CocoaPods master repo 卡着不动
出现Setting up CocoaPods master repo,说明Cocoapods正在将它的信息下载到 ~/.cocoapods里;(这一步是很费时间的,等输出Setup completed 安装完成啦)
在此过程中可以右击终端选 --->新建窗口;在新建的终端窗口输入:
cd ~/.cocoapods
进入cocoa pods文件,然后在终端输入:
du -sh *
即可查看下载的文件大小。也就可以知道是网速不好,还是源不可用了。
接下来我们要在项目里添加CocoaPods管理器
通过cd + 路径进入我们的项目
例如$ cd /Users/Chen/Desktop/CocoaPodsTest如果你不知道自己的路径,可以将文件夹拖入Termal。会自动帮你完成路径
进入以下路径
这时候需要创建一个文件来控制CocoaPods该下载什么。这个文件就叫做“Podfile”(注意:文件名固定,而且没有后缀)。你创建一个Podfile文件,然后在里面添加你需要下载的类库。每个项目只需要一个Podfile文件。
利用vim创建Podfile,运行:
$ vim Podfile
点击i进入编辑模式
然后在Podfile文件中输入以下文字:
platform :ios,'7.0'
pod'MJRefresh','~> 3.1.0'
这句话意思是支持的iOS最高版本是iOS7.0, 要下载的MJRefresh版本是3.1.0
然后保存退出。vim环境下,保存退出命令是:
按下ESC 然后输入:wq再回车
如果我们不知道cocoaPods管理的库中,是否有你想要的库,那么你可以通过$ pod search xxx命令进行查找,
例如:
$ pod search MJRefresh
会出现
-> MJRefresh (3.1.0)
An easy way to use pull-to-refresh
pod 'MJRefresh', '~> 3.1.0' //你只需要将这句话加上就好了
- Homepage: https://github.com/CoderMJLee/MJRefresh
- Source: https://github.com/CoderMJLee/MJRefresh.Git
- Versions: 3.1.0, 3.0.8, 3.0.7, 3.0.6, 3.0.5, 3.0.4, 3.0.3, 3.0.2, 3.0.1,
3.0.0, 2.5.0, 2.4.12, 2.4.11, 2.4.10, 2.4.9, 2.4.8, 2.4.7, 2.4.6, 2.4.5,
2.4.4, 2.4.3, 2.4.2, 2.4.1, 2.4.0, 2.3.2, 2.3.1, 2.3.0, 2.2.1, 2.2.0, 2.1.0,
2.0.4, 2.0.3, 2.0.2, 2.0.1, 2.0.0, 1.4.7, 1.4.6, 1.4.5, 1.4.4, 1.4.3, 1.4.1,
1.4.0, 1.3.8, 1.3.7, 1.3.6, 1.3.5, 1.3.4, 1.3.3, 1.3.2, 1.3.1, 1.3.0, 1.2.0,
1.1.0, 1.0.5, 1.0.4, 1.0.3, 0.0.1 [master repo]
这时候输入
$ pod install
会出现以下效果。时间会有点慢。
这时候打开项目文件夹
我们可以看见项目多了很多东西。
以后打开项目通过选中的这个,而不用原来文件。
我们还需要更改一个属性:将Other Linker Flags 值设为 $(inherited)
当我们以后使用coacoaPods时我们只需要更改项目里的Podfile文件
当我们每次修改了Podfile这个文件后,一定要记得执行命令:$ pod install,还可以执行$ pod update来更新类库
在使用pod install/pod update更ai新很慢,原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库,加一个参数可以省略这一步,然后速度就会提升不少。加参数的命令如下:
pod install --verbose --no-repo-update
pod update --verbose --no-repo-update