15 CocoaPods 使用指南

CocoaPods 是 Objective-C 的一个依赖管理器,它可以自动化并简化在项目中使用第三方库的过程。

15.1 安装 CocoaPods

你可以用 RubyGems 工具包安装 CocoaPods,安装命令如下:

$ sudo gem install cocoapods

但有时运行该命令会报错:

$ ERROR:  While executing gem ... (Gem::FilePermissionError) $ You don't have write permissions for the /usr/bin directory.

原因是 “/usr/bin is protected by system integrity protection and is not writeable by anybody even root. ” 所以要把 CocoaPods 安装在 /usr/local/bin 路径下,使用如下命令:

$ sudo gem install -n /usr/local/bin cocoapods

install 加上参数 -n 表示 “Directory where executables are located”,参数含义可通过命令 "gem help install" 查询。

15.2 更新索引

安装完 CocoaPods 执行 pod setup,将所有的项目的 Podspec 文件更新到本地的 ~/.cocoapods/ 目录下。

$ pod setup

所有的项目的 Podspec 文件都托管在 https://github.com/CocoaPods/Specs.git 上,CocoaPods 在执行 pod install pod update时,会默认先更新一次 Podspec 索引。如果更新太慢,可修改 repo 地址为国内的镜像,如 gitcafe 的镜像操作命令如下:

$ pod repo remove master $ pod repo add master https://gitcafe.com/akuandev/Specs.git $ pod repo update

也可修改为 oschina 的镜像 http://git.oschina.net/akuandev/Specs.git。

如果用户 pod 操作时没找到我们最近的 SDK 版本,截图如下:

这种情况就是索引太旧需要更新了,执行命令 pod repo update 即可,或者在 pod install 的时候带上参数 –-repo-update

15.3 pod installpod update 的区别

执行 pod install 之后,CocoaPods 会生成一个名为 Podfile.lock 的文件。Podfile.lock 会锁定当前各依赖库的版本,之后如果多次执行 pod install 不会更改版本,要 pod update 才会改 Podfile.lock 了。这样多人协作的时候,可以防止第三方库升级时造成大家各自的第三方库版本不一致。

pod install 只会按照 Podfile 的要求来请求类库,如果类库版本号有变化,那么将获取失败。但是 pod update 会更新所有的类库,获取最新版本的类库。每次更改了 Podfile 文件,你都需要重新执行一次 pod update 命令。

15.4 查询 CocoaPods 版本

$ pod --version

15.5 Homebrew & RubyGems

Homebrew 是 Mac 平台的一个包管理工具,提供了许多Mac下没有的Linux工具等。官网:https://brew.sh,官网上有安装命令:

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

安装完 Homebrew,就可以用 Homebrew 的命令 brew 来安装 RubyGems,命令安装如下:

$ brew install ruby

RubyGems 官网为 https://rubygems.org

Last updated