安装卸载更新新推荐

 文章最后 其他问题总结;

 

1 添加taobao提供的镜像地址:http://ruby.taobao.org/

移除命令:gem sources –remove https://rubygems.org/

添加命令:gem sources -a http://ruby.taobao.org/

查看gem来源列表:$ gem sources -l

 

2 在命令终端输入:

sudo gem install cocoapods

等待15分钟:

 

$ sudo gem install cocoapods

Password:

Fetching: i18n-0.7.0.gem (100%)

Successfully installed i18n-0.7.0

Fetching: thread_safe-0.3.4.gem (100%)

Successfully installed thread_safe-0.3.4

Fetching: tzinfo-1.2.2.gem (100%)

Successfully installed tzinfo-1.2.2

Fetching: minitest-5.5.1.gem (100%)

Successfully installed minitest-5.5.1

Fetching: activesupport-4.2.0.gem (100%)

Successfully installed activesupport-4.2.0

Fetching: nap-0.8.0.gem (100%)

Successfully installed nap-0.8.0

Fetching: fuzzy_match-2.0.4.gem (100%)

Successfully installed fuzzy_match-2.0.4

Fetching: cocoapods-core-0.36.0.gem (100%)

Successfully installed cocoapods-core-0.36.0

Fetching: claide-0.8.1.gem (100%)

Successfully installed claide-0.8.1

Fetching: colored-1.2.gem (100%)

Successfully installed colored-1.2

Fetching: xcodeproj-0.23.0.gem (100%)

Successfully installed xcodeproj-0.23.0

Fetching: cocoapods-downloader-0.8.1.gem (100%)

Successfully installed cocoapods-downloader-0.8.1

Fetching: cocoapods-plugins-0.4.1.gem (100%)

Successfully installed cocoapods-plugins-0.4.1

Fetching: cocoapods-try-0.4.3.gem (100%)

Successfully installed cocoapods-try-0.4.3

Fetching: netrc-0.7.8.gem (100%)

Successfully installed netrc-0.7.8

Fetching: cocoapods-trunk-0.6.0.gem (100%)

Successfully installed cocoapods-trunk-0.6.0

Fetching: molinillo-0.2.1.gem (100%)

Successfully installed molinillo-0.2.1

Fetching: escape-0.0.4.gem (100%)

Successfully installed escape-0.0.4

Fetching: open4-1.3.4.gem (100%)

Successfully installed open4-1.3.4

Fetching: cocoapods-0.36.0.gem (100%)

Successfully installed cocoapods-0.36.0

Parsing documentation for i18n-0.7.0

Installing ri documentation for i18n-0.7.0

Parsing documentation for thread_safe-0.3.4

Installing ri documentation for thread_safe-0.3.4

Parsing documentation for tzinfo-1.2.2

Installing ri documentation for tzinfo-1.2.2

Parsing documentation for minitest-5.5.1

Installing ri documentation for minitest-5.5.1

Parsing documentation for activesupport-4.2.0

unable to convert “\x84” from ASCII-8BIT to UTF-8 for lib/active_support/values/unicode_tables.dat, skipping

Installing ri documentation for activesupport-4.2.0

Parsing documentation for nap-0.8.0

Installing ri documentation for nap-0.8.0

Parsing documentation for fuzzy_match-2.0.4

Installing ri documentation for fuzzy_match-2.0.4

Parsing documentation for cocoapods-core-0.36.0

Installing ri documentation for cocoapods-core-0.36.0

Parsing documentation for claide-0.8.1

Installing ri documentation for claide-0.8.1

Parsing documentation for colored-1.2

Installing ri documentation for colored-1.2

Parsing documentation for xcodeproj-0.23.0

Installing ri documentation for xcodeproj-0.23.0

Parsing documentation for cocoapods-downloader-0.8.1

Installing ri documentation for cocoapods-downloader-0.8.1

Parsing documentation for cocoapods-plugins-0.4.1

Installing ri documentation for cocoapods-plugins-0.4.1

Parsing documentation for cocoapods-try-0.4.3

Installing ri documentation for cocoapods-try-0.4.3

Parsing documentation for netrc-0.7.8

Installing ri documentation for netrc-0.7.8

Parsing documentation for cocoapods-trunk-0.6.0

Installing ri documentation for cocoapods-trunk-0.6.0

Parsing documentation for molinillo-0.2.1

Installing ri documentation for molinillo-0.2.1

Parsing documentation for escape-0.0.4

Installing ri documentation for escape-0.0.4

Parsing documentation for open4-1.3.4

Installing ri documentation for open4-1.3.4

Parsing documentation for cocoapods-0.36.0

Installing ri documentation for cocoapods-0.36.0

20 gems installed

 

如此安装成功!

安装成功后,接着执行命令:

pod setup

如果Ruby环境不够新,或安装时提示”ERROR:  Error installing cocoapods:activesupport requires Ruby version >= 2.2.2.”这样的错误,代表你的ruby需要更新了,需要更新一下:

sudo gem update --system

如果执行完上面的命令后,还是无法更新到较新的版本,则需要用rvm来更新,具体步骤如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$ curl -L get.rvm.io | bash -s stable
 
$ source ~/.bashrc
 
$ source ~/.bash_profile
 
#测试是否安装正常
$ rvm -v
 
#查看当前ruby版本 
$ ruby -v
  
#列出已知的ruby版本 
$ rvm list known
 
#安装ruby 1.9.3 
$ rvm install 1.9.3

至此安装就完成了,我们可以尝试搜索一个第三方类库:

pod search AFNetworking

使用CocoaPods的第一步,是在当前项目下,新建一个Podfile文件:

touch Podfile

然后利用vim打开Podfile文件编辑,加入你想要使用的类库,格式如下:

复制代码
platform :ios
pod \'Reachability\', \'3.1.0\'

platform:ios, \'6.0\'
pod \'JSONKit\',\'1.4\'
pod \'AFNetworking\', \'~> 2.3.1\'
复制代码

如果是拷贝的别人的项目,或是一个很久没打开过的项目,可能需要先执行一下:

pod update

最后一步,执行命令:

pod install

当终端出现类似下面的提示后,就代表成功了:

[!] From now on use `Sample0814.xcworkspace`.

这个时候会看到项目文件夹下多了一个文件xxx.xcworkspace,以后要通过这个文件打开项目,老项目文件xxx.xcodeproj不再使用。

 

P.s.1 上面的每一步都有可能出现问题,但大部分问题都是因为大局域网的原因,用一个网速稳定的境外VPN可破。

 

P.s.2 如果上面因为权限问题安装失败,必须每次都要删除

rm -rf /Users/loginnanme/Library/Caches/CocoaPods/

因为这个缓存中会存下你的github的东西,造成每次都调用上次权限问题的缓存。

 

P.s.3 关于Podfile文件编辑时,第三方库版本号的各种写法:

复制代码
pod ‘AFNetworking’      //不显式指定依赖库版本,表示每次都获取最新版本
pod ‘AFNetworking’,  ‘2.0’     //只使用2.0版本
pod ‘AFNetworking’, ‘>2.0′     //使用高于2.0的版本
pod ‘AFNetworking’, ‘>=2.0′     //使用大于或等于2.0的版本
pod ‘AFNetworking’, ‘<2.0′     //使用小于2.0的版本
pod ‘AFNetworking’, ‘<=2.0′     //使用小于或等于2.0的版本
pod ‘AFNetworking’, ‘~>0.1.2′     //使用大于等于0.1.2但小于0.2的版本,相当于>=0.1.2并且<0.2.0
pod ‘AFNetworking’, ‘~>0.1′     //使用大于等于0.1但小于1.0的版本
pod ‘AFNetworking’, ‘~>0′     //高于0的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本

 

 

二、为了和谐,为了速度,我们身在天朝,你懂的,使用cocoapods国内镜像服务器:

 

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

第二条命令运行比较耗时,因为要clone,5、6分钟可能要,因为它要把自己大概60M的specs库拷贝下来,上面的地址不行,可以更换下面几个镜像

 

1:http://akinliu.github.io/2014/05/03/cocoapods-specs-/ 

2:http://Git.oschina.net/akuandev/Specs.git

 

这些镜像都是一位大大贡献出来的,链接在此:http://akinliu.github.io/2014/05/03/cocoapods-specs-/

使用参数忽略掉specs更新,直接更新我们想要的库:

 

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

不用担心我们的specs会很老,因为该镜像的大大,每隔10分钟就帮我们同步了一次specs,童鞋们要感谢他。

 

 

使用:

官网说明书:http://guides.cocoapods.org/terminal/commands.html

其实看这个就能解决几个重要问题:

1、第三方已经给修改过,如何忽略掉,更新别的,就是单独更新

原文:http://guides.cocoapods.org/terminal/commands.html#pod_update

翻译:

 

pod 更新

pod update [POD_NAMES ...]

 

更新由pod指定的POD_NAMES标识的库。如果POD_NAMES没有指定,则它将更新所有的库,忽略了 Podfile.lock 的内容。此命令保留给依赖项的更新和 pod 安装应该用于对 Podfile 安装更改。

 

Options:

–project-directory=/project/dir/

设置更新的路径

–no-clean

下载后离开SCM连接管理

–no-integrate

跳过xcode项目的pod集成库

–no-repo-update

安装前跳过pod repo update步骤,repo是Git的版本库

Inherited options:

–silent

什么都不显示

–version

显示该工具的版本。

–verbose

显示更多的调试信息。

–no-ansi

显示输出没有 ANSI 代码。

–help

帮助

 

 

单独更新的例子:

pod update \’pop\’ –verbose –no-repo-update  //更新pop库,显示所有调试信息,不检查更新cocoapod版本库

 
 
 
 
问题:

解决办法
 
终端输入 :
rm ~/Library/Caches/CocoaPods/search_index.json   
之后 再继续查找
 
 

版权声明:本文为xujiahui原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/xujiahui/p/6041675.html