我之前安装了带有mac附带的预装ruby的rails。我最近通过rvm安装了ruby。
然后我做了
rails -v
并得到以下错误
kingsosina$ rails -v
/Library/Ruby/Site/2.0.0/rubygems/dependency.rb:298:in `to_specs': Could not find 'railties' (>= 0) among 5 total gem(s) (Gem::LoadError)
from /Library/Ruby/Site/2.0.0/rubygems/dependency.rb:309:in `to_spec'
from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_gem.rb:47:in `gem'
from /usr/bin/rails:22:in `<main>'
这里出了什么问题?我需要再次安装gem导轨吗?
我最近输出的
kingsosina$ which ruby
/Users/kingsosina/.rvm/rubies/ruby-2.0.0-p353/bin/ruby
kingsosina$ which rails
/Users/kingsosina/.rvm/gems/ruby-2.0.0-p353/bin/rails
kingsosina$ which gem
/Users/kingsosina/.rvm/rubies/ruby-2.0.0-p353/bin/gem
kingsosina$
一切看起来还好吗?当我做ruby-v时,终端是如何知道引用这个版本的ruby而不是mac上预装的版本的?
值得注意的是,错误输出中显示的路径表明您仍在引用ruby的OSX版本。您需要输入目录并键入
rvm use X.X.X-pXXX
其中X.X.X-pXXX是您希望rvm使用的ruby版本。您还可以添加一个名为.ruby版本的文件,其中包含X.X.X-pXXX,rvm和其他ruby版本管理器将切换到适合您的版本。添加.ruby-gemset文件也将切换到适当的gem集。
最后,您需要确保gem安装在rvmruby/gemset组合中。把所有这些放在一起,要开始使用最新的ruby和最新的rails gem,你会。。。
rvm install 2.0.0
rvm use 2.0.0
rvm gemset use --create my-project-gems
gem install rails
您是否在安装rvm的同时安装了较新版本的ruby?执行rvm list
以了解您安装了哪些红宝石。然后执行rvm use <ruby-version-here>
以选择带有rvm的ruby。然后你需要再次gem install rails
,因为它是一个新的ruby。如果您在尝试安装gems时遇到拒绝权限错误,请尝试rvmsudo gem install rails
。