首页 > 代码库 > MacBook安装CocoaPods及使用
MacBook安装CocoaPods及使用
CocoaPods是什么?
当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等。可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而其他类库又用到其他类库,“子子孙孙无穷尽也”,这也许是比较特殊的情况。手动一个个去下载所需类库十分麻烦。另外一种常见情况是,你项目中用到的类库有更新,你必须得重新下载新版本,重新加入到项目中,十分麻烦。如果能有什么工具能解决这些恼人的问题,那将“善莫大焉”。所以,你需要 CocoaPods。
CocoaPods应该是iOS最常用最有名的类库管理工具了,上述两个烦人的问题,通过cocoaPods,只需要一行命令就可以完全解决,当然前提是你必须正确设置它。重要的是,绝大部分有名的开源类库,都支持CocoaPods。所以,作为iOS程序员的我们,掌握CocoaPods的使用是必不可少的基本技能了。在我们有了CocoaPods这个工具之后,只需要将用到的第三方开源库放到一个名为Podfile的文件中,然后在命令行执行$ pod install
命令。CocoaPods就会自动将这些第三方开源库的源码下载下来,并且为我的工程设置好相应的系统依赖和编译参数。
安装CocoaPods前的准备
(1)# 先安装 [Xcode](http://developer.apple.com/xcode/) 开发工具,它将帮你安装好 Unix 环境需要的开发包
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
(2)安装RVM
$ curl -L https://raw.githubusercontent.com/wayneeseguin/rvm/master/binscripts/rvm-installer | bash -s stable
期间可能会问你 sudo 管理员密码,以及自动通过 Homebrew
安装依赖包,等待一段时间后就可以成功安装好 RVM。
然后,载入 RVM 环境(新开 Termal 就不用这么做了,会自动重新载入的)
$ source ~/.rvm/scripts/rvm
修改 RVM 下载 Ruby 的源,到 Ruby China 的镜像:
echo "ruby_url=https://cache.ruby-china.org/pub/ruby" > ~/.rvm/user/db
检查一下是否安装正确
$ rvm -v rvm 1.27.0 (latest) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]
(3)用 RVM 安装 Ruby 环境
$ rvm install 2.3.0
等待时间非常漫长的下载,编译过程,完成以后,Ruby, Ruby Gems 就安装好了。
(4)设置 Ruby 版本
RVM 装好以后,需要执行下面的命令将指定版本的 Ruby 设置为系统默认版本
$ rvm use 2.3.0 --default
同样,也可以用其他版本号,前提是你有用 rvm install 安装过那个版本
这个时候你可以测试是否正确
$ ruby -v ruby 2.3.0 ... $ gem -v 2.5.1
查询已经安装的ruby
$ rvm list
卸载一个已安装版本
$ rvm remove 2.0.0
(5)安装 CocoaPods
因为Ruby的默认源使用的是cocoapods.org,国内访问这个网址有时候会有问题,网上的一种解决方案是将其替换成其他站点的,替换方式如下:
移除原始镜像:
$gem source -r https://rubygems.org/
安装其他站点镜像
$https://gems.ruby-china.org/
要想验证是否替换成功了,可以执行:
$ gem sources -l
正常的输出结果:
*** CURRENT SOURCES ***
https://gems.ruby-china.org/
安装CocoaPods
在本地已经安装好Ruby环境,那么下载和安装CocoaPods将十分简单,只需要一行命令。输入以下命令进行安装 CocoaPods
$ sudo gem install cocoapods
*-*-*-*到这里 CocoaPods 就安装完成了*-*-*-*
CocoaPods的使用
为了确定AFNetworking是否支持CocoaPods,可以用CocoaPods的搜索功能验证一下。在终端中输入:
$ pod search AFNetworking
出现错误:
[!] /usr/bin/git clone https://github.com/CocoaPods/Specs.git master
Cloning into ‘master‘...
fatal: unable to access ‘https://github.com/CocoaPods/Specs.git/‘: Failed to connect to github.com port 443: Operation timed out
解决方法:
$ sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
再次输入
$ pod search AFNetworking
还是卡在
Setting up CocoaPods master repo
这里很久,不知道什么原因,等了很久终于能顺利执行下去。
废话少说,说说怎么用,以AFNetworking为例子:
(1)在工程的目录(也就是跟***.xcodeproj文件在同一个文件夹)
下创建 Podfile (注意,一定得是这个文件名,而且没有后缀)空白文件 。你创建一个Podfile文件,然后在里面添加你需要下载的类库,也就是告诉CocoaPods,“某某和某某和某某某,快到碗里来!”。每个项目只需要一个Podfile文件。
(2)打开podfile文件,输入需要的第三方(按照下面格式输入)
platform :ios, ‘9.0‘ use_frameworks! #use_frameworks!个别需要用到它,比如reactiveCocoa target ‘项目名称‘ do pod ‘AFNetworking‘, ‘~> 3.1‘ end
保存退出
(3)终端输入
$pod install
(4)打开工程
***.xcworkspace的文件
就此添加第三方AFNetworking成功
参考文档
(1)http://code4app.com/article/cocoapods-install-usage
(2)http://blog.csdn.net/qq_31810357/article/details/50031979
(3)http://ruby-china.org/wiki/install_ruby_guide
(4)http://blog.csdn.net/emulatestep/article/details/51644903
MacBook安装CocoaPods及使用