CocoaPods 安装和使用
一、《什么是CocoaPods》
官网描述:CocoaPods is the dependency manager for Swift and Objective-C Cocoa projects. It has almost ten thousand libraries and can help you scale your projects elegantly.(CocoaPods是一个独立的管理器,可以为Swift/Objective-C项目提供管理,它拥有数千万计的第三方库,因而可以帮你优雅地管理你的项目结构)
我的理解:让程序猿工作的效率更高,更方便的管理第三方库。(ios项目引用到第三方库很常见,有些大型项目引用的库可能是10+个,人为的管理起来,显得有点低效,正因为这样的应用需求,故Cocoapods出现了)
二、《如何安装》
首先、
1.确保你的Mac安装了Brew
2.使用brew命令,安装ruby。(我们安装cocoapods需要ruby命令,所以需要安装ruby)
安装命令: brew install ruby
3.安装cocoapods
按照官网的指示:在终端输入:sudo gem install cocoapods即可安装cocoapods成功。
但注意,在tian朝似乎是没那么容易就可以安装成功的。(可以使用vpn代理去下载)
如果没有vpn,接下来的具体步骤可以即使在tian朝也可以安装成功。
终端依次输入以下命令:
1)gem sources –remove https://rubygems.org/
// (2016年01月15日09:33:26修改:需要使用https。)
2)gem sources -a https://ruby.taobao.org/
上面的步骤,主要是让你重新指定一个镜像地址,访问国内的镜像地址去下载安装cocoapods.
查看是否修改镜像地址成功:
3)gem sources -l
修改成功后,就可以执行cocoapods安装命令安装cocoapods了。执行安装命令:
4)sudo gem install cocoapods
成功。
三、《如何使用cocoapods》
使用xcode创建一个项目、比如CocoaPodsDemo。使用终端cd进入到项目下、创建Podfile文件(没有后缀、只有名称,推荐使用pod init命令来创建Podfile模板)。
编辑Podfile文件、推荐使用vim来写、编写pod文件的时候,需要注意:platform平台的定义ios要全部小写、注意引号(英文单点引号)。
Podfile编写样例:
platform:ios, \’8.0\’
pod \’AFNetworking\’
pod \’SDWebImage\’
上面的3行说明了Podfile的编写规范。指定了ios平台,指定了ios的版本。并导入最新版本的AFNetworking,和最新版本的SDWebImage库。
Podfile文件编写成功后,执行命令:pod install 开始安装。
等待一会儿,cocoapods正在帮你下载你的第三方库。。。可能会有报错,大部分原因都是因为你的Podfile文件编写格式有错误。
执行完成以后,你可以看到:
$ pod install
Analyzing dependencies
Downloading dependencies
Installing AFNetworking (2.5.4)
Installing SDWebImage (3.7.2)
Generating Pods project
Integrating client project
[!] Please close any current Xcode sessions and use `CocoapodsDemo.xcworkspace` for this project from now on.
上面的信息说明第三方库已经成功导入到了我的CocoapodsDemo项目中了。按照最后一句说的来做。
(pod指定版本的库,格式:pod \’ReactiveCocoa\’, \’~> 2.5\’,不填写版本的话,默认pod最新版本的第三方库)
打开我们项目中的CocoapodsDemo.xcworkspace项目,因为这个是Cocoapdos为我们整合了第三库,合并代码建立的项目。
在代码里,比如使用SDWebImage,只要这样: #import <SDWebImageManager.h>
打开CocoapodsDemo.xcworkspace,可以看看cocoapods为我们创建的新的项目结构。
可以看到项目中已经包含了SDWebImageManager和AFNetworking了。
Cocoapods可以管理第三方库,我们可以这样做去更新第三方库:
1. 使用pod的install命令去安装我们需要的第三方库。
2.如果第三方库在github上面有新的更新,比如bug修复,功能性增加等。
此时可以使用pod的另外一个命令(pod update) 去获取最新的库,cocoapods会自动为项目整合最新的代码,生成xcworkspace。
3.使用pod search xxxx去查看是否有这样的库。例如(pod search SDWebImage)
番外:
如何删除一个不再需要的第三方库?
同样,编辑Podfile文件,删除你想要去除的第三方库,保存Podfile文件,然后记得执行命令pod install。
至此,已经学会了如何使用Cocoapods去方便的导入第三方了。不用自己麻烦的拷贝粘贴,还有各种出错的信息需要去调试解决。
—————————————2016年05月03日10:33:47【注】—————————————————————
升级OS X系统版本10.11.4后,pod命令消失了。。。。重新按照上面的步骤,重新装一遍。
当执行到:sudo gem install cocoapods命令后,出现如下错误。
ERROR: While executing gem … (Errno::EPERM)
Operation not permitted – /usr/bin/xcodeproj
尝试:
sudo nvram boot-args=“rootless=0”
sudo reboot
命令关机重启后,问题并没有解决。。。
最终解决方法:sudo gem install -n /usr/local/bin cocoapods