2

我正在使用 RVM,并且在没有先创建 gemset 的情况下安装了最新版本的 Rails (3.2.5) 是错误的。

现在,我正在处理的一个项目需要兼容 Rails 3.0.0,但是当我创建一个新的 gemset,安装 Rails 3.0.0 并检查我的 Rails 版本时,它仍然说我有 3.2.5

我是否只需要从任何地方卸载 Rails 并重新安装到单独的 gemset 中就可以了?

4

2 回答 2

4

如果您运行gem list -d rails,您将获得与此类似的输出。

*** LOCAL GEMS ***

rails (3.2.3)
    Author: David Heinemeier Hansson
    Homepage: http://www.rubyonrails.org
    Installed at: /Users/bjedrocha/.rvm/gems/ruby-1.9.3-p194@jwb

    Full-stack web application framework.

注意installed at指令。后面的部分@表示宝石。因此,如果您在没有先创建并切换到命名 gemset 的情况下安装了 Rails,那么它很可能安装在@globalgemset 下(RVM 的默认设置)。如果这是你的情况,我会切换到全局 gemset 并卸载 Rails。卸载后,您可以切换回命名的 gemset,它将使用安装在此 gemset 中的 Rails 版本

rvm use 1.9.3@global
gem uninstall rails

rvm use 1.9.3@mygemset

希望这可以帮助

于 2012-06-11T22:02:10.847 回答
2

听起来 Rails 3.2.5 是您的全局 gemset 的成员,其安装由每个 ruby​​ 的 gemset 继承。

我会先用 库存您的 gemset rvm gemset list,看看 @global 和新 gemset 之间是否有区别,如果需要,从 @global gemset 卸载 gem。

我认为您需要了解的大部分内容都在这里: https ://rvm.io/gemsets/basics/

于 2012-06-11T22:02:55.377 回答