使用RVM切换到较旧的rails版本时“找不到文件:lib”

时间:2010-12-06 04:36:48

标签: ruby-on-rails rvm

我目前有rails 3.0.3,我正在尝试下载并使用3.0.1版。我已经下载并安装了RVM并在终端中输入了以下代码(我有一台Mac OS X 10.6.5):

rvm use 1.8.7
rvm gemset create rails3.0.1
rvm 1.8.7@rails3.0.1
sudo gem install rails --version=3.0.1

我使用sudo gems是因为用户权限,或者我缺乏。无论如何,在我输入最后一行代码后: “sudo gem install rails --version = 3.0.1” 我收到以下错误:

Successfully installed rails-3.0.1
1 gem installed
Installing ri documentation for rails-3.0.1...
File not found: lib

我不仅显然无法切换rails的版本,即使看起来好像我安装了多个版本,每次我尝试查看当前有哪些版本的rails我得到以下结果:< / p>

rails -v
/Library/Ruby/Site/1.8/rubygems.rb:779:in `report_activate_error': Could not find  RubyGem rails (>= 0) (Gem::LoadError)
from /Library/Ruby/Site/1.8/rubygems.rb:214:in `activate'
from /Library/Ruby/Site/1.8/rubygems.rb:1082:in `gem'
from /usr/bin/rails:18

另外,我已经安装了Rdoc和Xcode(我已完成研究和其他建议指向安装两者)。我是一个RoR新手,特别是一个RVM新手,所以我想要一个解释和解决这个疯狂。

感谢您阅读!

1 个答案:

答案 0 :(得分:1)

我认为你就在这里(ha-ha)离开了轨道(

sudo gem install rails --version=3.0.1

RVM documentation对此有这样的说法:

  

不要使用sudo ......

     

使用RVM宝石。当你这样做   sudo你以root身份运行命令,   另一个shell中的另一个用户   因此RVM具有的所有设置   为你做的事被忽略了   命令在sudo下运行(这样的事情   作为GEM_HOME等......)。重申一下,   一旦你'sudo'你就跑了   将作为根系统用户   清除你的环境以及   它创建的任何文件都无法   由您的用户修改并将   导致奇怪的事情发生。   (你会开始认为有人   有你的巫毒娃娃   应用...)