0

平台:windows 7,在 JRuby 1.6.8 上运行。

C:\project> rake db:migrate
rake aborted!
You have already activated rake 10.0.3, but your Gemfile requires rake 0.9.2.2.
Using bundle exec may solve this.

好的。我已经添加了

gem "rake", "= 0.9.2.2"

到 Gemfile 并运行:

C:\project> bundle exec rake db:migrate
bundler: command not found: rake
Install missing gem executables with `bundle install`

<礼貌>WTF?</礼貌>

我也做过

bundle install --deployment

无济于事。

我安装了不同版本的 rake:

C:\project>gem list

LOCAL GEMS
...
rake (10.0.3, 0.9.2.2, 0.8.7)

如何解决这个问题?我需要 rake db:migrate 与我的特定(继承的)RoR 项目一起使用往往有点过时的 gem,但它们都在 Gemfile 中指定。

4

1 回答 1

0
  1. bundle --deployment在您清楚地了解它的用途之前,请不要运行。(这很混乱,我们通常使用bundle install --path vendor/bundle

  2. 第一个错误意味着您应该使用 执行命令bundle exec,例如 bundle exec rake db:migrate

  3. 在版本更改后,Gemfile您应该只运行bundle install没有--deployment.

此时我建议删除.bundle项目主页中的文件夹,这会反转--deployment调用。之后打电话bundle install再试一次。如果它不起作用,请告诉我们。

不要沮丧,一旦你掌握了它的窍门,捆绑就很酷。

于 2013-02-07T13:36:01.693 回答