1

我最近从 Ruby 1.9.3 升级到了 2.0.0 版。为此,我使用了以下命令:

$ rvm install ruby-2.0.0
$ rvm --default use ruby-2.0.0

它成功安装并设置为默认的ruby-2.0.0;但是,当我进入时ruby -v遇到错误:

Rails is not currently installed on this system. To get the latest version, simply type:

    $ sudo gem install rails

You can then rerun your "rails" command.

我知道 Rails 已安装,并且在升级我的 Ruby 版本之前,我运行 rails -v 返回了我当前的版本。

尝试排除故障

我按照较早的帖子中找到的解决方案运行了以下命令:

gemsets for ruby-1.9.3-p374 (found in /Users/.../.rvm/gems/ruby-1.9.3-p374)
   (default)
=> global
   rails3tutorial2ndEd

/etc/rvmrc: line 5: install:: command not found
/etc/rvmrc: line 6: update:: command not found

gemsets for ruby-2.0.0-rc1 (found in /Users/.../.rvm/gems/ruby-2.0.0-rc1)
   (default)
=> global

rvm use ruby-2.0.0-rc1@global

但是,rails -v再次运行表明问题仍然存在。

任何帮助将不胜感激!

更新:

不耐烦让我重新安装了解决问题的 Rails。但是,我仍然很好奇是否有更好的方法来解决此问题而无需(可能不必要地)重新安装 Rails。

4

1 回答 1

2

RVM 中的 Gemset 是孤立的,因为它们仅适用于单个版本的 Ruby。因此,您需要在安装新版本的 Ruby 后重新安装 Rails gem。

当通过 RVM 安装 Ruby 版本时,将同时创建 2 个关联的 gemset。一种称为“全局”,一种称为“默认”。

Ruby 版本(及其单个关联的全局 gemset)通过该rvm use ruby_version_here命令激活。

默认或(可能是多个)用户生成的 gemsets 通过rvm use gemset_name_here命令激活。

无论 gemset 是全局的、默认的还是用户生成的 - 它仅适用于单个版本的 Ruby。

这是一篇不错的博客文章,更详细地介绍了该主题。

于 2013-07-12T06:37:36.270 回答