由于之前弄过octopress导致今天要用cocoapods时无法使用:
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/dependency.rb:296:in `to_specs': Could not find 'cocoapods' (>= 0) among 70 total gem(s) (Gem::LoadError)
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/dependency.rb:307:in `to_spec'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_gem.rb:47:in `gem'
from /usr/bin/pod:22:in `<main>'
因为之前用octopress的时候是需要装1.9.3的ruby,而cocoapods需要的是比较新的ruby版本,所以我们需要用rvm安装2个不同的ruby版本,然后用到那个就切换版本就好了。
最好先更新rvm到最新的版本,因为rvm是管理ruby、gem的工具。
curl -L get.rvm.io | bash -s stable --autolibs=enabled
我的显示了这样子的描述:
# ChenShiLong,
#
# Thank you for using RVM!
# We sincerely hope that RVM helps to make your life easier and more enjoyable!!!
#
# ~Wayne, Michal & team.
In case of problems: http://rvm.io/help and https://twitter.com/rvm_io
Upgrade Notes:
* WARNING: You have '~/.profile' file, you might want to load it,
to do that add the following line to '/Users/MrChen/.bash_profile':
source ~/.profile
* No new notes to display.
根据描述输入/Users/MrChen/.bash_profil
到.profile
文件中。
然后输入rvm -v
会显示下面的内容:
rvm -v
RVM version 1.26.11 (latest) is installed yet 1.26.10 (latest) is loaded.
Please do one of the following:
* 'rvm reload'
* open a new shell
* 'echo rvm_auto_reload_flag=1 >> ~/.rvmrc' # for auto reload with msg.
* 'echo rvm_auto_reload_flag=2 >> ~/.rvmrc' # for silent auto reload.
根据提示我输入rvm reload
显示是RVM reloaded!
最后输入rvm -v
显示为:rvm 1.26.11 (latest) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]
rvm get head
rvm reload
rvm -v
根据别人的blog,现在应该就能显示最新的版本:
rvm 1.26.11 (latest) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]
然后查看当前ruby版本:
ruby -v
显示为:
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin14.1.0]
查看ruby的列表:rvm list
显示为:
rvm rubies
=* ruby-1.9.3-p0 [ x86_64 ]
# => - current
# =* - current && default
# * - default
发现只有1.9.3版的,再安装一个2.1.1的:
rvm install ryby-2.1.3
如果发现很慢或者失败什么的试试下面的方法:
被墙的原因 使用下面的代码:
//查看当前的源 gem sources -l //删除官方的源 gem sources --remove https://rubygems.org/ //添加淘宝的源 gem sources -a https://ruby.taobao.org/
显示的结果为:
*** CURRENT SOURCES ***
https://ruby.taobao.org/
就可以了。这时候再执行:rvm install ruby-2.1.3
这是参考网站
- 提示.git文件夹被占用,可以用下面的命令解决
rm -rf /usr/local/Cellar /usr/local/.git && brew cleanup
如果顺利的安装完成,(如果不能顺利那最好翻墙吧)键入rvm list
就可以看到2个版本已经安装好;
rvm rubies
* ruby-1.9.3-p0 [ x86_64 ]
=> ruby-2.1.3 [ x86_64 ]
# => - current
# =* - current && default
# * - default
然后用2.1.3重新安装下cocoapods,通过键入rvm use 2.1.3
,显示如下内容。
Using /Users/MrChen/.rvm/gems/ruby-2.1.3
再键入如下内容:
gem install cocoapods
这之后可能会等很久,也可能会很快。以前安装的时候等了快2个小时,今天用了不到3分钟。(可能是因为翻墙的原因吧!!!)
成功之后键入:
gem which cocoapods
然后会显示如下内容:
/Users/MrChen/.rvm/gems/ruby-2.1.3/gems/cocoapods-0.37.1/lib/cocoapods.rb
这时候可以试试pod search json
看看有没有结果,有的话就说明成功了。
关于pod的使用可以看下我另外一篇文章。
参考的资料:
Mac下安装过octopress导致ruby版本不对,cocoapods无法使用的解决方法
CocoaPods Getting Started