MyException - 我的异常网
当前位置:我的异常网» Iphone » CocoaPods的安装、使用、以及遇到的有关问题

CocoaPods的安装、使用、以及遇到的有关问题

www.MyException.Cn  网友分享于:2013-12-23  浏览:0次
CocoaPods的安装、使用、以及遇到的问题

CocoaPods是什么?

当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等。可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而其他类库又用到其他类库,“子子孙孙无穷尽也”,这也许是比较特殊的情况。总之小编的意思就是,手动一个个去下载所需类库十分麻烦。另外一种常见情况是,你项目中用到的类库有更新,你必须得重新下载新版本,重新加入到项目中,十分麻烦。如果能有什么工具能解决这些恼人的问题,那将“善莫大焉”。所以,你需要 CocoaPods。

CocoaPods应该是iOS最常用最有名的类库管理工具了,上述两个烦人的问题,通过cocoaPods,只需要一行命令就可以完全解决,当然前提是你必须正确设置它。重要的是,绝大部分有名的开源类库,都支持CocoaPods。所以,作为iOS程序员的我们,掌握CocoaPods的使用是必不可少的基本技能了。

如何下载和安装CocoaPods?

注:要使用CocoaPods,那就要下载安装它,而下载安装CocoaPods需要Ruby环境

1.Ruby环境的安装

1.1.Ruby版本过低,使用RVM(Ruby Version Manage即Ruby版本管理)升级Ruby

//1.安装RVM
curl -L get.rvm.io | bash -s stable
//2.等待一段时间后就可以成功安装后RVM
source ~/.bashrc
//3.测试是否安装正常
rvm -v

1.2.用RVM升级Ruby

//列出已知的ruby版本号
rvm list known
//安装ruby 最新版本
rvm install 最新版本号

1.3.查看ruby版本

ruby -v

2.cocoaPods的安装

2.1.切换cocoaPods的数据源

//先删除旧的数据源
gem source --remove https://rubygems.org/
//添加新的数据源
gem source -a https://ruby.taobao.org/
//查看数据源
gem source -l

2.2.安装cocoaPods

//安装cocoaPods
sudo gem install cocoapods
//配置仓库
pod setup
//下载结束,可查看版本号
pod --version

CocoaPod的使用

2.1.1.开源库的搜索

pod search AFNetworking

2.1.2.添加第三方库,

  • 终端命令

a.新建一个项目

b.终端中,cd到项目的总目录 

c.建立Podfile(配置文件) vim Podfile 

d.键盘输入 i,进入编辑模式

e.编辑结束,按Esc,并且输入“ :”号进入vim命令模式,然后在冒号后边输入wq进行保存

f.输入 pod install,开始安装第三方

  • 关于Podfile文件编辑

a.正常情况的编写

platform:ios,'8.0'
target:'工程的名字' do
pod '第三方库的名字','版本号'
end

b.如果不同的Target需要不同的依赖库,则可以  

platform :ios  
target :'FirstTarget' do  
pod 'Reachability'  
pod 'SBJson'     
pod 'AFNetworking'   
end    
    
target :'SecondTarget' do  
pod 'OpenUDID'   
end

c.第三方库版本号的各种写法:

pod ‘AFNetworking’      //不显式指定依赖库版本,表示每次都获取最新版本
pod ‘AFNetworking’,  ‘2.0’     //只使用2.0版本
pod ‘AFNetworking’, ‘>2.0′     //使用高于2.0的版本
pod ‘AFNetworking’, ‘>=2.0′     //使用大于或等于2.0的版本
pod ‘AFNetworking’, ‘<2.0′     //使用小于2.0的版本
pod ‘AFNetworking’, ‘<=2.0′     //使用小于或等于2.0的版本
pod ‘AFNetworking’, ‘~>0.1.2′     //使用大于等于0.1.2但小于0.2的版本,相当于>=0.1.2并且<0.2.0
pod ‘AFNetworking’, ‘~>0.1′     //使用大于等于0.1但小于1.0的版本
pod ‘AFNetworking’, ‘~>0′     //高于0的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本

CocoaPod安装以及使用过程中出现的问题

a.没有指定工程中的Target

b.Podfile编写规范有误

c.安装了多个Xcode导致路径发生改变

.

解决办法

sudo xcode-select -switch /Applications/Xcode.app
注: /Applications/Xcode.app:此部分未Xcode所在路径,找到Xcode的安装路径,拖进来即可

d.当库正常导入后,但还是找不到相关头文件,制约了我们的开发效率,则可以:

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

e.该开始安装后,会有以下情况,这一步一般都需要等待点时间,在安装过程,要是想查看下载进度,通过以下命令可以查看

//进入CocoaPods目录
cd ~/.cocoapods
//查看文件大小,每隔几分钟查看一次
du -sh *

f.当输入终端命令 :

sudo gem install cocoapods  

提示以下错误:

这个问题说明是你的gem版本过旧了 (没有报错此步骤可以跳过)

执行  sudo gem update --system  

或是在命令中指定安装到/usr/bin/pods下即可正常安装成功:

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

安装成功 

以上问题为本人目前遇到的 ,还请大家帮忙补充 

 

  

文章评论

做程序猿的老婆应该注意的一些事情
做程序猿的老婆应该注意的一些事情
如何区分一个程序员是“老手“还是“新手“?
如何区分一个程序员是“老手“还是“新手“?
我的丈夫是个程序员
我的丈夫是个程序员
“肮脏的”IT工作排行榜
“肮脏的”IT工作排行榜
程序员最害怕的5件事 你中招了吗?
程序员最害怕的5件事 你中招了吗?
Web开发者需具备的8个好习惯
Web开发者需具备的8个好习惯
2013年中国软件开发者薪资调查报告
2013年中国软件开发者薪资调查报告
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
聊聊HTTPS和SSL/TLS协议
聊聊HTTPS和SSL/TLS协议
Google伦敦新总部 犹如星级庄园
Google伦敦新总部 犹如星级庄园
程序员的鄙视链
程序员的鄙视链
程序员都该阅读的书
程序员都该阅读的书
10个调试和排错的小建议
10个调试和排错的小建议
Java程序员必看电影
Java程序员必看电影
代码女神横空出世
代码女神横空出世
十大编程算法助程序员走上高手之路
十大编程算法助程序员走上高手之路
程序员和编码员之间的区别
程序员和编码员之间的区别
10个帮程序员减压放松的网站
10个帮程序员减压放松的网站
每天工作4小时的程序员
每天工作4小时的程序员
为什么程序员都是夜猫子
为什么程序员都是夜猫子
老美怎么看待阿里赴美上市
老美怎么看待阿里赴美上市
程序员必看的十大电影
程序员必看的十大电影
一个程序员的时间管理
一个程序员的时间管理
团队中“技术大拿”并非越多越好
团队中“技术大拿”并非越多越好
科技史上最臭名昭著的13大罪犯
科技史上最臭名昭著的13大罪犯
写给自己也写给你 自己到底该何去何从
写给自己也写给你 自己到底该何去何从
中美印日四国程序员比较
中美印日四国程序员比较
漫画:程序员的工作
漫画:程序员的工作
初级 vs 高级开发者 哪个性价比更高?
初级 vs 高级开发者 哪个性价比更高?
编程语言是女人
编程语言是女人
我跳槽是因为他们的显示器更大
我跳槽是因为他们的显示器更大
那些争议最大的编程观点
那些争议最大的编程观点
亲爱的项目经理,我恨你
亲爱的项目经理,我恨你
鲜为人知的编程真相
鲜为人知的编程真相
程序员应该关注的一些事儿
程序员应该关注的一些事儿
老程序员的下场
老程序员的下场
60个开发者不容错过的免费资源库
60个开发者不容错过的免费资源库
程序员周末都喜欢做什么?
程序员周末都喜欢做什么?
程序猿的崛起——Growth Hacker
程序猿的崛起——Growth Hacker
Web开发人员为什么越来越懒了?
Web开发人员为什么越来越懒了?
要嫁就嫁程序猿—钱多话少死的早
要嫁就嫁程序猿—钱多话少死的早
不懂技术不要对懂技术的人说这很容易实现
不懂技术不要对懂技术的人说这很容易实现
Java 与 .NET 的平台发展之争
Java 与 .NET 的平台发展之争
如何成为一名黑客
如何成为一名黑客
看13位CEO、创始人和高管如何提高工作效率
看13位CEO、创始人和高管如何提高工作效率
我是如何打败拖延症的
我是如何打败拖延症的
5款最佳正则表达式编辑调试器
5款最佳正则表达式编辑调试器
程序员眼里IE浏览器是什么样的
程序员眼里IE浏览器是什么样的
为啥Android手机总会越用越慢?
为啥Android手机总会越用越慢?
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有