Ruby on rails 3 与Rails 3中的rake错误混淆
Noob正在试图破解如何处理以下错误: 雷克流产了! 您已经激活了rake 0.9.1,但您的文件需要rake 0.8.7。考虑使用束Exc. 非常感谢您的帮助。您有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文件指
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。这对我来说很有效:
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