编程学习首页投稿(暂停使用,暂停投稿)程序员

CocoaPods安装教程&使用说明&问题解决(

2016-12-01  本文已影响144人  manofit

最近开始把项目里面用到的第三方库用CocoaPods方法添加,过程中遇到一些问题,现在把安装过程,使用方法,及本人遇到的问题和亲测的有效方法记录在此。

一。安装

1.ruby环境搭建

本人用的是Mac Book,本身自带ruby环境,但是为了后期安装,最好还是更新一下ruby环境

clf:Cowa gaojun$ gem -v

如果发现不是最新的版本,可以执行下面命令

clf:Cowa gaojun$ gem update --system

更新完以后,再次执行上面命令,提示如下

Latest version currently installed. Aborting.

说明你电脑当前的ruby环境是最新的环境。

上面是假设你的电脑已经有了ruby环境,当电脑上没有ruby环境时候,需要我们自己搭建,指令如下

gem sources --remove https://rubygems.org/ 
gem sources -a https://ruby.taobao.org/ 

这是现在网上绝大多数安装ruby镜像到的地址,是淘宝的,但是现在这个地址很不稳定,好在笔者已经找到一个目前最新的稳定地址,更新命令如下

clf:Cowa gaojun$ gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/

这是ruby环境在国内的最新镜像地址,分享给大家了。大家可以看下这个通知[https://ruby-china.org/topics/29250]

下面,继续命令

clf:Cowa gaojun$ gem sources -l

你会看到

*** CURRENT SOURCES ***

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

说明你的ruby环境已经搭建成功了。

2.安装cocoapods

执行命令

clf:Cowa gaojun$ sudo gem install cocoapods

稍后你会看到

Successfully installed cocoapods-1.1.1
Parsing documentation for cocoapods-1.1.1
1 gem installed

现在,用终端cd到你的项目更目录

clf:~ gaojun$ cd Desktop/Cowa

然后执行

vim Podfile

编辑Podfile文件,这里面存放项目里面用到所有的库的版本信息,键盘输入 i 键,进入编辑模式,编辑完成以后,先按下 esc 键,再按下 : w q 键,完成编辑。执行命令

clf:Cowa gaojun$ pod install

这个过程需要等待很久的,因为初始加载你所需要的库文件。

等待安装完成,至此,已经成功为项目添加了依赖库。打开项目文件夹,项目目录类似这样

屏幕快照 2016-12-01 09.26.23.png

二。使用

以后打开工程,只要直接打开“Cowa.xcworkspace”即可。在这里,也可以看到刚刚用终端编辑的Podfile文件,以后我们也可以直接在项目中编辑Podfile文件,然后保存,最后执行pod install即可。

最新版本的cocoapods对Podfile文件编辑的格式有了规定,格式如下

屏幕快照 2016-12-01 09.30.40.png

库名称后面的标记是指定更新到哪一个版本,如果删除,则每次更新到最新版本。

这里记录下 pod install 和 pod update 的区别

所以,可以这样理解:你应该使用pod update PODNAME去只更新某个特定的库(检查是否有新版本,并尽可能更新到新的版本)。对应的,你应该使用pod install,这个命令不会更新那些已经安装了的库。当你在你的Podfile里面添加了一个库的时候,你应该使用pod install,而不是pod update,这样既安装了这个库,也不需要去更新其它的已安装库。你应该使用pod update去更新某个特定的库,或者所有的库(在Podfile的限制中)。

我们也可以使用pod去查找一些库

clf:Cowa gaojun$ pod search Alamofire

三。问题解决

这里只是列出了自己遇到的一些问题,在国内的很多个人博客,论坛上面的答案各不一样,实在害人不浅~~~
1.Unable to add a source with url https://github.com/CocoaPods/Specs.git named master.
You can try adding it manually in ~/.cocoapods/repos or via pod repo add.

解决:分两次运行下面命令

cd ~/.cocoapods/repos
git clone https://github.com/CocoaPods/Specs.git master

2.xcode报错:Command /bin/sh failed with exit code 126

解决:执行pod install

3.While executing gem ... (Errno::EPERM) Operation not permitted - /usr/bin/pod

解决:执行命令

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

4./Library/Ruby/Site/2.0.0/rubygems.rb:270:in find_spec_for_exe': can't find gem cocoapods (>= 0.a) (Gem::GemNotFoundException) from /Library/Ruby/Site/2.0.0/rubygems.rb:298:inactivate_bin_path'
from /usr/local/bin/pod:22:in `<main>'

解决:按照上面步骤重新更新ruby环境

5.[!] /usr/bin/git clone https://github.com/romaonthego/RESideMenu.git /var/folders/hb/0_fyfkq52pg7phjnb1523pz00000gp/T/d20161130-24596-uh23fv --template= --single-branch --depth 1 --branch 4.0.7

Cloning into '/var/folders/hb/0_fyfkq52pg7phjnb1523pz00000gp/T/d20161130-24596-uh23fv'...
error: RPC failed; curl 56 SSLRead() return error -36
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed

解决:这个我理解的是服务器不稳定,还没有下载完就挂起的原因,所以只要坚持不懈的不停pod install就可以了。

6.找不到头文件

解决:在TARGETS -> Search Paths -> User Header Search Paths 中 写入 ${SRCROOT} 再将后面参数改为recursive

7.ERROR: While executing gem ... (Errno::EPERM)
Operation not permitted - /usr/bin/pod

解决: sudo gem install -n /usr/local/bin cocoapods

8.ERROR: While executing gem ... (Errno::EPERM)
Operation not permitted - /usr/bin/update_rubygems

解决: https://stackoverflow.com/questions/33015875/operation-not-permitted-usr-bin-update-rubygems

(持续更新中...)

上一篇 下一篇

猜你喜欢

热点阅读