【发布时间】:2012-12-13 22:08:28
【问题描述】:
我最近创建了一个新的 Rails 项目,并且我相信我在生成应用程序之前为它创建了一个 gemset。
但是当我遇到错误时,我会收到这样的消息:
File /.rvm/gems/ruby-1.9.3-p194@project_1/gems/activerecord-3.2.8/lib/active_record/relation/finder_methods.rb
即使我在project_2。所以理论上应该是ruby-1.9.3-p194@project_2而不是project_1。
这是什么原因造成的,我该如何解决?
谢谢。
附:我正在使用 RVM。
编辑 1:
我跑了rvm gemset list,这是输出:
project_2$ rvm gemset list
gemsets for ruby-1.9.3-p194 (found in /Users/marcamillion/.rvm/gems/ruby-1.9.3-p194)
project_1
=> project_2
project_3
编辑 2:
在为该项目创建了.rvmrc 文件后,我刚刚在我的project_2 目录中运行了gem install rails,并验证了它确实专门为该项目使用了gemset。但是,当我再次生成错误时,我仍然在 project_1 中看到对 gemset 的引用。
编辑 3:
rvm current 的输出:
$ rvm current
ruby-1.9.3-p194@project_2
编辑 4:
虽然,当我在与 rails s 相同的终端窗口中运行 rvm current 时,我看到了:
$ rvm current
ruby-1.9.3-p194@project_1
那么,我现在和将来如何在所有终端窗口中设置 gemset?
【问题讨论】:
-
您从
rvm gemset list获得该输出,但您仍然收到上述project1错误? -
@pferdefleisch 是的......我仍然收到这个错误,即使我做了 jim-stewart 在下面的答案中建议的操作。顺便说一句,我什至重新启动了我的服务器,所以不确定发生了什么。
-
gem install rails并尝试再次生成它之后会发生什么? -
生成什么?我的整个应用程序?这是一个现有的应用程序,如果我不需要,我并不急于重新生成。这是唯一的解决方案吗?
-
在我的
Gemfile中将rails 版本从3.2.8更改为3.2.9后,我只是重新运行gem install rails然后bundle update rails。但是我仍然从 diff 项目中的 gemset 中得到错误。
标签: ruby-on-rails ruby ruby-on-rails-3 rvm gemset