cocoapods安装遇到的问题及解决方法

这一篇是用Markdown 写的,梳理了一下排版。以前的文章改不成Markdown了。凑活吧,真扯淡,得水,走,去拉水去。

错误基本 cocoapods 升级版本到 1.0.0 所造成的

错误 1、

当写在 Podfile 文件中的第三方框架,不能使用,找不到时
查看 Pods 文件夹,是否下载了所需要的第三方框架,没有的话就 pod update

错误 2、

Could not automatically select an Xcode project. Specify one in your Podfile like so:xcodeproj 'path/to/Project.xcodeproj
在 Podfile 文件里指定下工程目录就行了

xcodeproj 'Demo/Demo.xcodeproj

但是如果 cocoapods 版本为(1.0.0)的话,可能会有以下警告

[!] xcodeproj was renamed to `project`. Please use that from now on.

这时只需要把 xcodeproj 改为 project 就行了

project 'Demo/Demo.project'

错误 3、

The dependency `AFNetworking (~> 3.0)` is not used in any concrete target.

在 Podfile 中添加

target‘项目名'do (如 target'Demo' do)

错误 4、

[!] InvalidPodfilefile: syntax error, unexpected end-of-input, expecting keyword_end.

在 Podfile 的末尾添加 end

错误 5、

Unable to find the Xcode project `/Volumes/BIAO/iOS/code/MBWB.xcodeproj` for the target `Pods`.

在 Podfile 中 将 project 'Demo/Demo.project’ 改成 project'Demo.project'

错误 6、

build diff: /../Podfile.lock: No such file or directory

在工程设置中的 Build Phases 下删除 Check Pods Manifest.lock 及 Copy Pods Resources

错误 7、

还有一个更新慢的问题:无论是执行pod install还是pod update都卡在了Analyzing dependencies不动

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

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

现在的cocoapods与之前比较,有很多不一样的地方。

因为现在cocoapods需要ruby>=2.2,所以:

1.首先查看ruby是否是最新版的。

查看当前ruby版本ruby是通过rvm安装的所以需要先安装rvm后查看ruby是否是最新的(通过查看ruby版本列表来判断),然后在终端需要中输入以下命令:

输入-- ruby -v

大概输出-- ruby 2.0.0

(1)安装RVM.RVM:Ruby Version Manager,Ruby版本管理器,包括Ruby的版本管理和Gem库管理(gemset)

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

![](http://upload-images.jianshu.io/upload_images/1761100-9766e578269ec49a.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)安装rvm

等待一段时间后就可以成功安装好 RVM

source ~/.bashrc
source ~/.bash_profile```

测试是否安装正常

rvm -v```

![](http://upload-images.jianshu.io/upload_images/1761100-00020291e1940b59.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)rvm安装完成

#####(2)用RVM升级Ruby
查看当前ruby版本ruby是通过rvm安装的所以需要先安装rvm后查看ruby是否是最新的(通过查看ruby版本列表来判断),然后在终端需要中输入以下命令:

ruby -v
ruby 2.3.0```

列出已知的ruby版本 --找到最新的版本安装

rvm list known

安装ruby 2.3.0 这个你随意只要大于2.2就行

rvm install 2.3.0

注意:有时会出现错误 提示
Requirements installation failed with status: 1.
****原因:因Mac未安装Homebrew造成的****
解决方法:在命令行输入以下指令安装Homebrew或者进入官网找到最新的下载链接
Homebrew官网:http://brew.sh/index_zh-cn.html 或者
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

**注意2 有时WARNING: You have '~/.profile' file, you might want to load it,错误,可尝试命令行输入
echo"source ~/.profile">> ~/.bash_profile

2.更换Ruby镜像--

淘宝的那个镜像(https://ruby.taobao.org/ )已经不可用了。官方的需要FQ。所以我们现在用最新支持的ruby镜像(https://gems.ruby-china.com/) ---->我用的是这个
注:有的可以使用淘宝的源,也不报错,具体原因未知,如无报错可继续使用淘宝镜像。
需要的命令行:

gem sources --remove https://rubygems.org/
gem sources -a https://gems.ruby-china.com/
gem sources -l  (用来检查使用替换镜像位置成功)

出现

替换镜像成功

则说明成功了。

3.下载安装CocoaPods

在命令行中输入:
安装:

sudo gem install cocoapods```

不过有可能出错,出错的话执行下面的命令

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

估计都会出错

更新:
sudo gem update cocoapods

安装完成cocoapods

安装----

在这里会很快就好了。。。网上教程说这样就已经完成安装了。。但我试了一下,直接搜索一下。在终端中输入:pod search AFNetworking。会出现“Setting up CocoaPods master repo“提示,而且很久一直不动,网上说因为没FQ的原因。但是我们已经将bury镜像已经改了,为什么还会这样呢?。还有一个原因是因为在后台下载,还没下载完成,所以会这样。
在这里我等了好久。通过新开一个终端窗口,输入"cd ~/.cocoapods/"命令行跳到cocoapods文件夹内,执行"du -sh *"查看文件夹的大小。发现一直是0。快崩溃了。
重头再来。首先将ruby更新到最新(上边方法)、将gem更新到最新、将cocoapods更新到最新。在将cocoapods更新到最新时,查到需要执行"pod setup",但是执行这个时会出现一直是“Setting up CocoaPods master repo“,但是查看大小还是0。此外还会出现下面这个新的错误:
[!] 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

注意 :按我的经验 此时有两种选择

第一种 亲测推荐已失效

按照[CocoaPods安装、超详细](http://www.jianshu.com/p/1bb0ad42cb2e) 里面的做法,去[百度网盘](https://pan.baidu.com/s/1pL8gpYj) 访问密码 1ee5下载这个master文件在网盘上。 下载之后,直接拖到repos 文件夹里就可以了。简单粗暴

第二种:老老实实等他下载完成

在pod setup的过程中又是这个提示"Setting up CocoaPods master repo",当时的感觉就快要砸电脑了,最后不死心去查看了一下cocoapods文件夹的大小。结果:
。。没错,没有看错,大小居然一直在增加。心怀激动的慢慢等待。

大概是这么大

最终大小

过了大概十几二十分钟左右,pod setup这个操作成功了。
这样,整个cocoapods安装应该成功了吧。我迫不及待的 想要试试。输入"pod search AFNetworking" 居然有内容出来。

pod search AFNetworking

PS: 如果发现 pod search XXXXX 搜索出来的不是最新版本,需要在终端执行 cd 转换文件路径命令退回到 Desktop,然后执行 pod setup 命令更新本地 spec 缓存(可能需要几分钟), 然后再搜索就可以了.

然后按照之前的教程在终端中,cd到项目总目录,先创建一个Project,然后创建一个single View Application到桌面,终端中输入: cd+空格,把刚刚创建到桌面的文件夹拖到终端中,回车
建立Podfile(配置文件)
接着上一步,
终端输入vim Podfile

键盘输入 i,进入编辑模式,输入:

然后按Esc,并且输入“ :”号进入vim命令模式,然后在冒号后边输入wq

注意:键盘输入 :后,才能输入wq。回车后发现PodTest项目总目录中多一个Podfile文件

podfile

激动人心的时刻到了:确定终端cd到项目总目录,然后输入 pod install。。。然后你会发现。。。
注意 : 如果你是这样写的,

platform :ios, '7.0'
pod 'MBProgressHUD', '~> 0.8'```

可能会提示这个错误:[!] The dependency `MBProgressHUD`isnot usedin any concrete target.
原来新的cocoapods不能像之前那样安装第三方了。现在的格式是要加上项目的target。如下:

platform :ios,'8.0'
use_frameworks!
target'MyApp'do
pod 'AFNetworking','~> 3.0'
pod'SDWebImage','~>3.7.6'
end

里面的MyApp记得替换为自己工程里面的target。这样就基本OK了,执行pod install / pod update 就都可以了。

在使用 pod install 安装第三方库的时候可能会卡在 Updating local specs repositories

解决办法把podinstall换成 podinstall--verbose --no-repo-update

成功

end:终于结束了。总结:安装过程出错,则删除并重新(更新)所有的需要的环境:(ruby、gem、cocoapods、其中包括cocoapods的节点),替换新的ruby镜像即可。
// 9.27 更新 读者给的建议 大家可以参考
下载最新的master(https://github.com/CocoaPods/Specs,最好用360下载有断点续传功能)然后按照上面步骤放进repos中,这时可以pod reaserch AFN了,但是却不能用pod install 。解决办法就是把上述网盘中的master 中的 .git文件夹整个复制到,~/.cocoapods/新的master/文件夹下 。
cocoapods,参考的安装流程:

http://www.cnblogs.com/guanshenbao/p/5534578.html#undefined__君少
CocoaPods安装、超详细

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

推荐阅读更多精彩内容