ruby-on-rails – 耙子流产! Heroku上未初始化的常量Rake :: DSL

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 耙子流产! Heroku上未初始化的常量Rake :: DSL前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
当试图在 Heroku上rake db:migrate时.我收到以下错误.
rake aborted!
uninitialized constant Rake::DSL

从我收集的内容来看,这似乎是Rake 0.9.2的错误.如果我在本地做“宝石列表”,则只安装Rake(0.8.7).

我尝试将“gem’rake’,’0.8.7’”添加到我的gem文件并运行bundle install但是后来我收到以下错误.

You have requested:
rake = 0.8.7

The bundle currently has rake locked at 0.9.2.
Try running `bundle update rake`

如果我运行bundle update rake,它会恢复到0.9.2,我回到了我开始的地方.

我错过了一些明显的东西吗?

解决方法

您应该使用bundle exec运行命令以确保获得正确的依赖项.所以运行:
bundle exec rake db:migrate

有关更详细的帖子,请参阅Yehuda Katz博客文章http://yehudakatz.com/2011/05/30/gem-versioning-and-bundler-doing-it-right/

如果你仍然有问题,似乎还有其他几个人有同样的问题How to fix the uninitialized constant Rake::DSL problem on Heroku?他们通过在他们的Rakefile中添加以下内容解决

require 'rake/dsl_definition'
require 'rake'

猜你在找的Ruby相关文章