Ruby on rails 3 与Rails 3中的rake错误混淆

Ruby on rails 3 与Rails 3中的rake错误混淆,ruby-on-rails-3,rake,Ruby On Rails 3,Rake,Noob正在试图破解如何处理以下错误: 雷克流产了! 您已经激活了rake 0.9.1,但您的文件需要rake 0.8.7。考虑使用束Exc. 非常感谢您的帮助。您有 gem 'rake', '0.8.7' 。。。在您的文件中 如果是这样,请将其删除。尝试运行bundle exec rake,而不仅仅是rake。当您的计算机上安装的rake版本比Gemfile(或Gemfile.lock)中指定的版本更新时,将发生此错误。此错误是由于您的系统上安装了rake 0.9.1,但您的rake文件指

Noob正在试图破解如何处理以下错误:

雷克流产了! 您已经激活了rake 0.9.1,但您的文件需要rake 0.8.7。考虑使用束Exc.

非常感谢您的帮助。

您有

gem 'rake', '0.8.7'
。。。在您的
文件中


如果是这样,请将其删除。

尝试运行
bundle exec rake
,而不仅仅是
rake
。当您的计算机上安装的rake版本比Gemfile(或Gemfile.lock)中指定的版本更新时,将发生此错误。

此错误是由于您的系统上安装了rake 0.9.1,但您的rake文件指定了0.8.7。您可以使用rake 0.8.7或更改所需的rake版本来执行bundle exec rake。

这对我来说很有效:

  • 将rake 0.8.7添加到您的GEM文件中

  • 通过执行以下操作移除耙0.9.1

  • 在终端上运行捆绑包更新

  • 希望有帮助。 谢谢

    安东尼奥

    bundle update rake
    

    适合我:D

    我的文件中没有这个。这是我检查的第一件事。我的gem文件包含:gem'rails','3.0.6';gem'sqlite3';gem“will_paginate”、“~>3.0.pre2”和gem“mysql”OK。在我看来,gem文件中gem的依赖项之间存在冲突。另一种方法是在Gemfile.bingo中将rake版本锁定为0.9.1。。。gemfile.lock不包含旧版本。我是否应该简单地更改文件以反映更新的版本。这将避免必须运行bundle exec。。。正确吗?运行
    bundle update
    ,它将为您完成此操作
    bundle update
    将Gemfile.lock中的所有gem版本更新为最新版本。您的Gemfile.lock可能包含较旧版本,因为您的一个gem需要该特定版本。@Jist:这是可能的,但运行
    bundle update
    也会将该gem更新为最新版本,这可能会也可能不会解决这个问题。如果没有,那么您可以使用
    gem uninstall rake-v 0.9.1
    @chris从不手动修改Gemfile.lock卸载较新版本的rake。您可以并且应该不时运行
    bundle update
    ,以更新所有已安装的gems。一定要确保准备了一个好的测试套件,然后在更新后完整地运行它。您可能会惊讶于有多少gem更新包含的更改会破坏您的代码。另请参阅。
    gem uninstall rake -v=0.9.1
    
    bundle update
    
    bundle update rake