iOS DeveloperiOS学习开发iOS进阶指南

Cocoapods安装的各种坑

2016-07-31  本文已影响648人  自在轻梦

简单说明本次知识要点

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 即可以完成安装;

上一篇下一篇

猜你喜欢

热点阅读