CocoaPods吐血安装过程

在之前工作中,第三方框架都是直接拖到工程中,这样太繁琐了,工作量大不说,在第三方代码版本管理也是一个很头疼的问题。后来采用了CocoaPods,一切就变得那么简单了,新项目虽然不大,但是自己还是使用了CocoaPods,这里把自己吐血安装的过程总结一下,真的是吐血呀。
文章默认电脑是第一次安装CocoaPods,内容按照我安装的过程以及遇到的问题和解决方法来进行描述的,我觉得这样比最后总结问题更直接一些。
PS.友情提示一下,安卓CocoaPods一定要保持良好的网速。因为自己在安装过程中公司网速影响了好多,回家之后网速快了,问题也就没了。。。

一、什么是CocoaPods


CocoaPods是一款第三方代码库的依赖管理工具,它可以在开发OS X或者iOS应用程序过程中对第三方框架进行搞笑的控制管理。这样开发者在配置成功CocoaPods之后,可以通过简单的命令就可以管理第三方库。而且,目前大部分开源类库都已支持CocoaPods。


CocoaPods

二、安装CocoaPods


我是通过终端来安装的,打开Mac终端输入命令行来安装CocoaPods。

  1. 输入命令sudo gem install cocoapods
    【解释】:这行命令是安装CocoaPods的命令。
    【可能出现的问题】:由于CocoaPods是采用Ruby实现的,所以Mac必须有Ruby环境。Ruby的默认源使用的是cocoapods.org,此网址在国内访问会出现问题。

  2. 修改Ruby源

  • 移除之前的Ruby路径gem sources --remove https://rubygems.org/
  • 更换新的路径
    这里要说明一下:之前是添加淘宝镜像gem sources -a https://ruby.taobao.org。但是目前淘宝的镜像已经停止更新了,停止更新公告
    公告截图

    良心的淘宝当然给了我们解决方法:
  1. 添加Ruby China的镜像gem sources --add https://gems.ruby-china.org/
  2. 由于我是第一次安装,之前已经移除了系统中当前的镜像,所以不用像链接内的方法移除当前镜像;
    官方推荐方法
  • 检查当前镜像gem sources -l,确保只有gems.ruby-chaina.org
  • 输入命令gem install rails(这里需要一段时间)
    再次确定当前镜像
  1. 再次输入sudo gem install cocoapods
  2. 输入pod setup
    如果没什么问题你就安装CocoaPods成功了,如何检查是否安装成功呢:
  • 终端输入pod --version,显示出版本即为成功;
  • 终端输入pod repo list,若结果为0 repos时说明没有安装成功。

三、可能出现的问题


  • Q:ERROR:while executing gem ...(ERROR::EPERM) Operation not permitted - /usr/bin/pod
    A:Stackoverflow上的解释是:This is happening because Apple has enabled rootless on the new install,也就是说在OS X EI Capitan(10.11)系统上苹果已经启动了无根的安装。在终端重新输入sudo gem install -n /usr/local/bin cocoapods
  • Q:Error installing pods:active support requires Ruby version >= 2.2.2
    A:需要Ruby版本不小于2.2.2。解决方法我参照了Ruby环境更新这篇文章。

  • Q:终端出现Setting up CocoaPods master repo之后没有任何变化
    A:说明CocoaPods正在将它的信息下载到 ~/.cocoapods中(这一步是很费时间的,等输出Setup completed 安装完成啦)
    PS.可以重新打开另一个终端,输入 cd ~/.cocoapods进入cocoapods文件夹——>输入`du -sh *查看进度。这一步一点要保证网速,这一步一定要保证网速,这一步一定要保证网速。

  • Q:pod setup时出现以下错误:

    [!] /usr/bin/git clone https://github.com/CocoaPods/Specs.git master
    Cloning into 'master'...
    error: RPC failed; curl 56 SSLRead() return error -36
    fatal: The remote end hung up unexpectedly
    fatal: early EOF
    fatal: index-pack failed
    You can try adding it manually in \`~/.cocoapods/repos\` or via \`pod repo add\`.
    

A:重新安装(其实我就是这样安装成功的):
首先,删除.cocoapods目录,在终端输入:
sudo rm -rf ~/.cocoapods/
然后,重新下载安装,在终端输入命令:
pod setup

  • Q:出现下面报错时:

    ERROR:  While executing gem ... (TypeError) no implicit conversion of nil into String
    

    A:更新gem sudo gem update --system

四、使用CocoaPods


  1. 终端中cd到项目所在路径,创建Podfile
    vim Podfile
  2. 按下i键进入输入状态,在Podfile文件里输入以下文字:
platform :ios, '8.0'
target 'Your_App_Name' do
pod 'AFNetworking', '~>3.0'
  1. 按下esc键退出输入。然后保存退出,命令是:wq。你当然可以使用vim之外的编辑软件来编辑Podfile文件。

注:cocoapods-1.0.0.beta版本后规定Podfile文件必须如上所示(加target)

  1. 终端cd到你的项目所在目录下执行如下命令来利用CocoPods下载第三方库:
    pod install

五、参考文章

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,125评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,293评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,054评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,077评论 1 291
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,096评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,062评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,988评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,817评论 0 273
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,266评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,486评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,646评论 1 347
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,375评论 5 342
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,974评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,621评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,796评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,642评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,538评论 2 352

推荐阅读更多精彩内容

  • CocoaPods 是什么? CocoaPods 是一个负责管理 iOS 项目中第三方开源库的工具。CocoaPo...
    朝洋阅读 25,677评论 3 51
  • 死寂的午夜,独自一人手持电筒,第n次走到小家伙面前,它依旧咬紧牙关,不肯松口。纵使我蓦然回首寻它千百度,却依旧咬定...
    花未眠88阅读 253评论 0 2
  • 现代人的工作非常忙碌,基本没时间照顾孩子,让孩子自由发展的话,容易失控。 在小城市的话,孩子们比较单纯。但是接触到...
    zzz雪人阅读 778评论 0 2
  • 每次逛淘宝最喜欢看的是评价里面的图片,不是在看卖家秀,而是在注意别人图片里的生活。就是想窥探别人的生活是不是精致。...
    拧巴君and雀跃君阅读 187评论 0 0