安装cocoapods及使用详解(持续更新)

使用cocoa pods遇到过很多问题,这里做一个总结:

基本的步骤是 gem install cocoapods -> pod setup -> pod init -> edit Podfile -> pod install -> open xcworksapce (期间出现对应的问题就对应解决)



1.设置ruby的软件源

$gem sources -l                                                                         #(查看当前ruby的源)

$gem sources --remove https://rubygems.org/                          #(移除当前ruby的源)

$gem sources -a https://gems.ruby-china.org/    #(设置当前ruby的源为我天朝的)

$gem sources -l                                                                         #(再次查看当前ruby的源)

如果Terminal输出:

*** CURRENT SOURCES ***

https://gems.ruby-china.org/

就证明ruby的软件源已经设置OK了。


2.设置gem为最新版本

如果gem太老,可以尝试用如下命令升级gem:

在Terminal输入以下命令:

sudo gem update --system

升级成功后会提示: Latest version currently installed. Aborting.


3.执行安装CocoaPods命令

注意:OS X 10.11 升级,虽然官方声称只是一个小的升级,但对于开发者而言,cocoapods需要重新安装,但按照以前的安装方式,在Terminal输入以下命令:

sudo gem install -n /usr/local/bin cocoa podssudo gem install -n /usr/local/bin  cocoapods

还有一点需要注意,pod setup在执行时,会输出Setting up CocoaPods master repo,但是会等待比较久的时间。这步其实是 Cocoapods 在将它的信息下载到 ~/.cocoapods目录下,如果你等太久,可以试着 cd 到那个目录,用du -sh *来查看下载进度。

安装成功后,你会看到:Setup completed

在家里有过执行setup用了半天的情况,如果你的网络有问题,就用oschina上的镜像,或者跟我一样出去喝个酒撸个串也挺好<( ̄▽ ̄)> …


打开xcode,新建一个工程,工程名为CocoapodsSample

使用命令cdcd后面跟的是工程目录名,可以直接拉进来,

回车后,输入命令创建Podfile文件

$pod init  //会生成模板的Podfile文件
//或者手动创建
$touch Podfile

我们可以看到,在根目录下,多了一个Podfile文件


3.使用vim编辑podfile文件,使用命令

$ vim Podfile


安装cocoapods及使用详解(持续更新)_第1张图片

在编辑完后按 esc,然后按":",这个时候输入wq保存退出。

使用命令:

pod install --verbose --no-repo-update //避免去更新了

执行成功后,会看到多了一个.xcworkspace工程,以后打开项目就用 CocoapodsSample.xcworkspace打开,而不是之前的.xcodeproj文件。

这样就可以愉快的使用别人造的轮子了啊<( ̄▽ ̄)> 哇哈哈…


执行pod install还是pod update都卡在了Analyzing dependencies不动

原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库,加一个参数可以省略这一步,然后速度就会提升不少。加参数的命令如下:

pod install --verbose --no-repo-update
pod update --verbose --no-repo-update

附:如何使用CocoaPods的镜像索引:

所有项目的Podspec文件都托管在https://github.com/CocoaPods/Specs,

第一次执行pod setup时,CocoaPods会将这些podspec索引文件更新到本地的~/.cocoapods目录下,

这个索引文件比较大,所以第一次更新时非常慢.

友好人士在国内的服务器建立了Cocoapods索引库的镜像,

所以执行索引跟新操作时候会快很多.具体操作方法如下:

pod repo remove master
//coding 上有每日更新的,建议使用这个
pod repo add master https://git.coding.net/CocoaPods/Specs.git

//或者用oschina,但是https 好像有问题,一直是403,所以用ssh的方式,这里需要到官网去配置ssh key
pod repo add master https://git.oschina.net/akuandev/Specs.git
如果提示失败或者setup不成功:
出现 [!] To setup the master specs repo, please run pod setup.
git clone https://git.coding.net/CocoaPods/Specs.git ~/.cocoapods/repos/master

pod setup  //务必在手动下载代码后执行一次,执行后 Setup completed

//在执行
pod install --verbose --no-repo-update //避免去更新了

如果使用oschina 的 https git clone不成功的话,建议到git.oschina.net中添加ssh key,换ssh方式下载源码

git clone git@git.oschina.net:akuandev/Specs.git  ~/.cocoapods/repos/master

关于 Podfile.lock

当你执行pod install之后,除了 Podfile 外,CocoaPods 还会生成一个名为Podfile.lock的文件,Podfile.lock 应该加入到版本控制里面,不应该把这个文件加入到.gitignore中。因为Podfile.lock会锁定当前各依赖库的版本,之后如果多次执行pod install 不会更改版本,要pod update才会改Podfile.lock了。这样多人协作的时候,可以防止第三方库升级时造成大家各自的第三方库版本不一致













你可能感兴趣的:(iOS)