Cocoapods安装的各种坑

简单说明本次知识要点

1.Cocoapods的安装;

2.安装遇到的问题;

3.安装总结;

4.最新补充;



背景介绍: 前几天发现笔记本有将近50个G的空间凭空消失了(用mac的朋友们有没有这个疑惑,求解答),一怒之下,就把系统格了,随之而来的就有各种问题了, 其中一个便是这个,虽然网上有很多的文章,但某些不全的地方说不定就在这看到啦,哈哈,方便各位学友吧,于是本文油然而生...  

才疏学浅,不足之处,还请各位大神指正!闲话少说,言归正传!


1.Cocoapods的安装

a. 移除现有Ruby默认源

gem sources --remove https://rubygems.org/

b. 使用新的源

gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/

c. 验证新源是否替换成功

gem sources -l

出现以代码表示替换成功

*** CURRENT SOURCES ***

https://rubygems.org/  

d. 安装CocoaPods

 sudo gem install cocoa pods 

 备注:苹果系统升级 OSX EL Capitan 后改为

 sudo gem install -n /usr/local/bin cocoa pods 这一步会让输入密码;

5. 设置pod仓库

pod setup 

终端会停留在 Setting up CocoaPods master repo 一段时间,通过新开一个终端窗口,输入"cd ~/.cocoapods/"命令行跳到cocoapods文件夹内,执行"du -sh *"查看文件夹的大小。需要下载安装,而且目录较大,请耐心等待。如果顺利,安装完成后会出现 Setup completed大功告成 ,你便可享受Cocoapods带来的快感啦啦...


以上如果顺利,则说明你的RP很好; 然世事一般不会如此顺利;以下为安装可能遇到的一些问题;在此略举一二!

2. 安装遇到的坑

1.常规坑

 升级Ruby环境

如果你用  gem update --system  时,会出现如下错误

Updating rubygems-update

ERROR:  While executing gem ... (Gem::FilePermissionError)

You don't have write permissions for the /Library/Ruby/Gems/2.0.0 directory.

这说明你没有权限,要用以下命令;

sudo gem update --system值得注意的是:在新系统10.11以上的要用

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


2. 在OS X EI Capitan中的新坑

如下:

Error installing cocoapods:

activesupport requires Ruby version >= 2.2.2.

要求ruby环境必须大于以上版本,可以用 ruby -v 来查看当前ruby版本,安装RVM, Ruby Version Manager, Ruby 版本管理器, 包括Ruby的版本管理器和Gem库管理(gems)

第一步,安装RVM

curl -L get.rvm.io | bash -s stable

等待一段时间, 成功安装RVM

##  Thank you for using RVM!

#  We sincerely hope that RVM helps to make your life easier and more enjoyable!!!

#测试是否安装正常,输入以下命令

source ~/.bashrc

source ~/.bash_profile

rvm -v

rvm 1.27.0 (latest) by Wayne E. Seguin, Michal Papis[https://rvm.io/]

第二步,用RVM升级Ruby

a.  查看当前ruby版本

   ruby -v

   ruby 2.0.0

b.  列出已知的ruby版本

     rvm list known

c.  安装ruby 2.3.0

      rvm install 2.3.0

至此,ruby环境安装完成,便可从新按照步骤一来从新安装啦;


另一个错误:

[!] An error occurred while performing `git pull` on repo `master`.

[!] /usr/bin/git pull --ff-only

这个错误应该是说这个节点有问题。在网上搜下资料,然后试试把cocoapods的节点删除,重新添加一个节点;

原因: Cocoapods的分支不支持当前最新的Xcode版本

解决办法: 删除master分支 重新建立新的分支

sudo rm -fr ~/.cocoapods/repos/master

然后再: pod setup


实用的技巧

a. 打印Xcode路径:xcode-select --print-path

b. "cd ~/.cocoapods/"命令行跳到cocoapods文件夹内,执行"du -sh *"查看文件夹的大小,实时了解安装动态,以解等待之苦。

c. 在新版本中 [!] The dependency `MBProgressHUD` is not used in any concrete target.

新的cocoapods不能像之前那样安装第三方了。现在的格式是要加上项目的target。如下:

platform :ios, '8.0'

target 'ceshi' do

pod 'AFNetworking', '~> 2.6'

pod "MBProgressHUD"

end

里面的 ceshi 记得替换为自己项目里面的target。这样就基本OK了,执行pod install 

d.  在新版的Xcode中,用到插件Cocoapods时,可能也会不好使,至于错误忘记贴出来了,如果不好用了,你就直接在Podfile中添加一下格式试下即可;

platform :ios, '8.0'

target 'ceshi' do

pod 'AFNetworking', '~> 2.6'

pod "MBProgressHUD"

end

将要添加的第三方放到target do    ~     end  之间  另外还有一个路径的问题;

安装命令: sudo gem install -n /usr/local/bin cocoapods

用上述命令安装的cocoapods,那么在Xcode的cocoapods插件的GEM_PATH里写入    /usr/local/bin    即可

在终端里输入  gem env

找到SHELL PATH:  会出现以下路径:

/usr/local/bin

/usr/bin

/bin

/usr/sbin

/sbin

通过命令找到这些,一个个试试,总之,肯定有一个是正确的;填入即可;



3.结语

好了,至此已至深夜,常见的问题已差不多解决了,要给朋友们说再见了,下次继续交流,不足之处还请各位大神不吝赐教!


最新补充:

cocoapods,如果在安装时出现类似错误The dependency `AFNetworking` is not used in any concrete target.

就可以按照上述实用技巧d步骤去写,还有一种简单的方法: 在新项目中可以使用,cd到目录文件夹中,直接 pod init  即可完成Podfile文件的创建里面会预置需要补充的内容,试一下就知道了,预置内容如下:

# Uncomment this line to define a global platform for your project

# platform :ios, '9.0'

target 'safafd' do

# Uncomment this line if you're using Swift or would like to use dynamic frameworks

# use_frameworks!

# Pods for safafd

target 'safafdUITests' do

inherit! :search_paths

# Pods for testing

end

end

(2018年10月16)新的安装错误补充


如果有以下的提示、其实也是已经成功了,但是如果你觉得「!」不舒服的话,[!] This is a test version we'd love you to try. (以下是完整的信息)

CocoaPods 1.6.0.beta.1 is available.

To update use: `sudo gem install cocoapods --pre`

[!] This is a test version we'd love you to try.

For more information, see https://blog.cocoapods.org and the CHANGELOG for this version at https://github.com/CocoaPods/CocoaPods/releases/tag/1.6.0.beta.1

Setup completed

遇到这种情况、输入sudo gem install cocoapods --pre 会报以下错误:

ERROR:  While executing gem ... (Gem::FilePermissionError)

    You don't have write permissions for the /usr/bin directory.

改用以下命令即可:

sudo gem install -n /usr/local/bin cocoapods 即可以完成安装;

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

推荐阅读更多精彩内容

  • 第一次安装CocoaPods也遇到了一些坑,但是 那个时候时间比较紧,没有抽出时间整理,最近因为电脑还原从新做了系...
    幸福的尾巴__阅读 8,284评论 7 9
  • cocoapods安装过3次都蜜汁失败 在第七次终于成功 下列附上过程 有耐心的朋友可以试试的我的步骤和方法 ps...
    _Dam0n阅读 2,421评论 0 1
  • 170203@D31.感恩冥想 *佩诗* 。深深的感恩慈悲伟大的佛陀 。感恩金刚智慧和慈悲伟大的圣师教授我们这个终...
    AllisonSim阅读 157评论 0 0
  • 我做了一件错事 这时候你会说 人这一辈子做过很多错事那还能怎么办 交给时间呗。 可是我不能 我不能交给一个空空的名词
    阿North阅读 123评论 0 0
  • 今参加了一场婚礼,我看不到婚礼的喜悦,看不到他们的甜蜜,致婚词中的:婚姻是契约婚姻是责任。不忘初心,只要不忘初心一...
    侠骨丹心9号阅读 170评论 0 0