背景:
- 每当我在旧项目中运行 rake 时,我都会遇到错误。(未初始化的常量 Rake::DSL)。
- 有问题的 rails 项目是一个从 Rails 2.1 开始的旧项目(我认为),从那时起,我已经更新了笔记本电脑上的操作系统几次,并在此过程中进行了更新以使其运行。
- 现在,只要我将 RAILS_GEM_VERSION 设置为 2.3.5,rails 应用程序就可以正常工作。我不确定该应用程序是否已完全更新到 Rails 2.3.5。
- 我的旧项目中没有 Gemfile。
- 如果我创建一个全新的 rails 项目(并取消设置 RAILS_GEM_VERSION),rake 运行良好。
我的问题:为了排除故障,我想尝试更新版本的 rake。我想知道如何强制使用一个特定版本,因为我似乎安装了多个版本。
关于我的环境的信息:
$ gem list rake
*** LOCAL GEMS ***
rake (0.9.2.2, 0.9.2, 0.8.7, 0.8.3)
$ rake --version
rake, version 0.8.7
所以看起来它正在接受 0.8.7 版本。
网上的所有帮助文件似乎都告诉我在 Gemfile 中指定 rake 版本,但这个项目中没有。(也许它早于 gemfiles?)
如果我完全取消设置 RAILS_GEM_ENVIRONMENT 变量,并尝试运行 rake,我会得到:
rake aborted!
can't activate rails (= 2.3.5, runtime) for [], already activated rails-3.2.8 for []
我的旧项目中的任何环境配置文件都没有设置该变量。