一.CocoaPods简介
每种语言发展到一个阶段,就会出现相应的依赖管理工具,例如 Java 语言的 Maven,nodejs 的 npm。随着 iOS 开发者的增多,业界也出现了为 iOS 程序提供依赖管理的工具,它的名字叫做:CocoaPods。CocoaPods项目的源码 在 Github 上管理。该项目开始于 2011 年 8 月 12 日,经过多年发展,现在已经成为 iOS 开发事实上的依赖管理标准工具。开发 iOS 项目不可避免地要使用第三方开源库,CocoaPods 的出现使得我们可以节省设置和更新第三方开源库的时间。
二.安装CocoaPods前的环境准备
CocoaPods是由ruby实现的,想使用必须要有Ruby安装环境. OS X系统默认已经运行了Ruby,不过最新的CocoaPods依赖ruby2.2以上版本才能良好使用
1.检测ruby版本 打开终端输入 ruby-v
$ ruby -v
ruby 2 . 3 .0p0 ( 2015 - 12 - 25 revision 53290 ) [x86_64-darwin15] |
|
弹出如图所示,如果版本已经超过2.2了则直接跳过第2,3步往下看.
2.安装rvm. RVM:Ruby Version Manager,Ruby版本管理器,包括Ruby的版本管理和Gem库管理(gemset)
下载rvm
$ curl -L get.rvm.io | bash -s stable
等待一段时间后就可以安装成功 执行如下命令
- $ source ~/.bashrc
- $ source ~/.bash_profile
检测是否安装正常
- $ 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 list known
安装ruby 2.3
$ rvm install 2.3
安装完后用ruby -v 查看是否安装成功
tanqilongdeMacBook-Pro:~ tanqilong$ ruby -v
ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin15]
tanqilongdeMacBook-Pro:~ tanqilong$
rvm use 2.3.0 --default
使用2.3.0为默认版本
三.安装CocoaPods
1.配置淘宝RubyGems镜像 ,由于国内网络原因(你懂的),导致资源文件间接性连接失败. ruby.taobao.org 由阿里云提供,目前同步平率为 15分钟一次.详情可以参见ruby.taobao.org.
移除ruby默认源
$gem sources --remove https://rubygems.org/
使用新的源
$gem sources -a https://ruby.taobao.org/
检测是否安装成功
$gem sources -l
如果出现 下面所示,则表明配置成功
*** CURRENT SOURCES ***
https://ruby.taobao.org/
2.安装CocoaPods
a.
#如果你的Mac是OS X EL 版本使用此命令
$sudo gem install -n /usr/local/bin cocoa pods
#如果你的Mac是OS X EL 之前的版本次用此命令
$sudo gem install cocoapods
b.
$pod setup
这个时间比较慢需要下载很多spec配置文件,目前大概有700多M,CocoaPods会将他们通通下载到 ~/.cocoapods里.
如果你急不可耐可以左如下操作
$cd ~/.cocoapods
$du -sh *
他将实时显示目前已经下载了多少了. 如图目前我这边为771M
tanqilongdeMacBook-Pro:.cocoapods tanqilong$ du -sh *
771M repos
771M repos
tanqilongdeMacBook-Pro:.cocoapods tanqilong$
c.
更新gem
$sudo gem update --system
到此CocoaPods就安装完成了. 下面我们来测试使用一下.
四.CocoaPods使用测试
1.打开xcode新建一个工程TestCocoaPods,保存在桌面.
2.打开终端cd到新建的工程目录
$ cd ~/desktop/TestCocoaPods
3.查询FMDB版本
$ pod search FMDB
我将给工程导入FMDB这个第三方,用于管理数据库.
4.新建podfile文件.
在上图终端 冒号(:)的地方输入q 放回到之前的界面如图
通过vim新建Podfile文件 (注意:名字,大小写,不要错了)
$vim Podfile
会进入如下界面
按 i 进入编辑模式, 输入如下命令(别把注释一块粘贴进去了,这里只是便于理解 ).
source 'https://github.com/CocoaPods/Specs.git' #指定描述第三方Specs文件的地址
platform :ios, '8.0' #我工程最低支持的版本,我就8.0为例子
target 'TestCocoaPods' do #指定当前工程targe的名字,此时就是我项目本身的名字
pod 'FMDB', '~> 2.6.2' #导入FMDB 2.6.2, 如果有别的第三方,可以敲回车继续添加
end
#注:上引号'不要写成’ 否则会出错,也不要把注释都粘贴进去了#
5.保存退出Podfile编辑
完成后按esc推出编辑模式,输入 :wq(有冒号), 再点击回车,回到之前的终端界面.
6.下载第三方文件
此时点开TestCocoaPods文件夹则已多出一个Podfile文件,此文件就是用于告诉CocoaPods我要下哪些东西,和怎么配置的.
打开终端,输入命令
pod install
等待一会儿后出现如下提示,则表示文件已经安装成功.
7.把所有的xcode都关掉,再次打开TestCocoaPods,此时目录已经多一个TestCocoaPods.xcworkspace文件,双击打开它.
上面的就是刚刚我们自己建立文件,下面Pods就是CococaPods帮我们管理第三方配置的文件. 而所有的第三方文件CocoaPods都将编译成一个libPods-TestCocoaPods.a这个库让我们的工程TestCocoaPods导入,让我们的工程可以引用所有经过Pods管理好的第三方.
8.测试
下面我们在ViewController引入一下FMDB.h再编译一下.
编译成功,至此我们就可以正常的在我们的TestCocoaPods 编写我们的代码,而无需过多关注Pods这个文件.