我正在使用 RVM,并且在没有先创建 gemset 的情况下安装了最新版本的 Rails (3.2.5) 是错误的。
现在,我正在处理的一个项目需要兼容 Rails 3.0.0,但是当我创建一个新的 gemset,安装 Rails 3.0.0 并检查我的 Rails 版本时,它仍然说我有 3.2.5
我是否只需要从任何地方卸载 Rails 并重新安装到单独的 gemset 中就可以了?
我正在使用 RVM,并且在没有先创建 gemset 的情况下安装了最新版本的 Rails (3.2.5) 是错误的。
现在,我正在处理的一个项目需要兼容 Rails 3.0.0,但是当我创建一个新的 gemset,安装 Rails 3.0.0 并检查我的 Rails 版本时,它仍然说我有 3.2.5
我是否只需要从任何地方卸载 Rails 并重新安装到单独的 gemset 中就可以了?
如果您运行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,那么它很可能安装在@global
gemset 下(RVM 的默认设置)。如果这是你的情况,我会切换到全局 gemset 并卸载 Rails。卸载后,您可以切换回命名的 gemset,它将使用安装在此 gemset 中的 Rails 版本
rvm use 1.9.3@global
gem uninstall rails
rvm use 1.9.3@mygemset
希望这可以帮助
听起来 Rails 3.2.5 是您的全局 gemset 的成员,其安装由每个 ruby 的 gemset 继承。
我会先用 库存您的 gemset rvm gemset list
,看看 @global 和新 gemset 之间是否有区别,如果需要,从 @global gemset 卸载 gem。
我认为您需要了解的大部分内容都在这里: https ://rvm.io/gemsets/basics/