您的位置:首页 > 移动开发 > IOS开发

iOS最新Mac OS X 10.11之后 安装cocoapods及使用详解

2018-03-07 11:49 656 查看
iOS 最新版 CocoaPods 的安装流程

一、安装方法:

1、移除现有Ruby默认源

gem sources --remove https://rubygems.org/
为了提高安装的成功几率,大家可以多移除几个源。

gem sources --remove https://rubygems.org/
gem sources --remove http://ruby.taobao.org/
gem sources --remove https://ruby.taobao.org/
gem sources --remove https://gems.ruby-china.org/ 宁可错杀一千,绝不放过一个

2、使用新的源

gem sources -a https://gems.ruby-china.org/

3、验证新源是否替换成功

gem sources -l

4、设置gem为最新版本

sudo gem update --system

如果失败,报错如下,请重新安装 ruby

目前最新版本:



RROR: While executing gem ... (Errno::EPERM)

Operation not permitted - /usr/bin/update_rubygems

解决办法:

在终端输入如下命令:ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
等执行完后,(如果安装失败:请参考http://stackoverflow.com/questions/28460953/homebrew-install-issue-after-computer-restoration)

在终端执行 brew install ruby

然后重新设置 gem为最新版本。

升级成功后会提示: Latest version currently installed. Aborting.

也可参照:http://blog.csdn.net/springjustin/article/details/51836968

5、执行安装CocoaPods命令

(1)sudo gem install cocoapods

如果报以下错误:

ERROR: While executing gem ... (Errno::EPERM)

Operation not permitted - /usr/bin/xcodeproj

解决方案1:

执行下面的命令并重启

(1)sudo nvram boot-args="rootless=0"

(2)sudo reboot

重启之后, 执行这个命令检查

(3)sudo gem install cocoapods -V

如果依旧有错误,使用第二个方案

解决方案2:

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

pod setup

这一点需要注意,pod setup在执行时,会输出Setting up CocoaPods master repo,但是会等待比较久的时间。这步其实是 Cocoapods 在将它的信息下载到 ~/.cocoapods目录下,如果你等太久,可以试着 cd 到那个目录,用du -sh *来查看下载进度。(总共大概是750兆)

安装成功后,你会看到:Setup completed

二、使用方法说明

1、在自己的工程中创建Podfile.lock文件

(1)cd 到自己的工程目录中

(2)输入 touch Podfile 回车

(3)使用Xcode打开Podfile.lock文件

(4)在终端中输入 pod search XXXXXX

eg: pod search AFNetworking

找到对应的库,将如下图中的红色标识内容复制到Podfile.lock文件中



(5)cd到Podfile.lock目录下执行如下操作来下载对应的库

pod install

最近使用CocoaPods来添加第三方类库,无论是执行pod install还是pod update都卡在了Analyzing dependencies不动

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

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

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

附一:如何使用CocoaPods的镜像索引:

所有项目的Podspec文件都托管在https://github.com/CocoaPods/Specs,

第一次执行pod setup时,CocoaPods会将这些podspec索引文件更新到本地的~/.cocoapods目录下,

这个索引文件比较大,所以第一次更新时非常慢.

友好人士在国内的服务器建立了Cocoapods索引库的镜像,

所以执行索引跟新操作时候会快很多.具体操作方法如下:

pod repo remove master

pod repo add master https://gitcafe.com/akuandev/Specs.git
pod repo update

这是使用gitcafe上的镜像,将以上代码中的 https://gitcafe.com/akuandev/Specs.git
替换成 http://git.oschina.net/akuandev/Specs.git 即可使用oschina上的镜像。

附二:升级 Ruby 版本(另一种方法)

第一步:安装rvm

$ curl -Lget.rvm.io | bash -s stable

$ source~/.profile

等待终端加载完毕,后输入:

$ rvm -v

如果能显示版本号,则安装成功。

第二步:安装ruby

列出ruby可安装的版本信息

$ rvm list known

安装一个ruby版本

$ rvm install 2.3

如果想设置为默认版本,可以用这条命令来完成

$ rvm use 2.1.4 --default

查看已安装的ruby

$ rvm list

卸载一个已安装ruby版本

rvm remove 2.3

第三步:更换源

查看已有的源

$ gem source -l

显示如下:

CURRENT SOURCES
http://rubygems.org/

2017年10月出现错误:

RuntimeError - [Xcodeproj] Unknown object version.

/Users/ocean/.rvm/gems/ruby-2.2.2@global/gems/xcodeproj-1.3.0/lib/xcodeproj/project.rb:217:ininitialize_from_file' /Users/ocean/.rvm/gems/ruby-2.2.2@global/gems/xcodeproj-1.3.0/lib/xcodeproj/project.rb:102:inopen'

原因:就是你的xcode版本和现在CocoaPods 的版本问题不匹配 比如你用xcode8 你的cocoaPods 版本是1.0.1 . 就有可能出现此类问题。因为xcode8需要cocoaPods1.1.0.

解决方法:

就是更新cocoaPods的版本 ,在终端执行如下命令gem install cocoapods --pre,然后在相对应podfile文件所在路径下执行pod install 即可。

作者:海棠依旧r_o
链接:https://www.jianshu.com/p/66cbebd1c125
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: