ruby-on-rails - rake 流产了! Heroku上未初始化的常量Rake::DSL

标签 ruby-on-rails heroku rake

尝试在Heroku上进行rake db:migrate时。我收到以下错误。

rake aborted!
uninitialized constant Rake::DSL

从我收集到的信息来看,这似乎是Rake 0.9.2的错误。如果我在本地执行“ gem 列表”,则仅会显示Rake(0.8.7)。

我尝试将“gem'rake','0.8.7'”添加到我的gem文件并运行捆绑安装,但是随后出现以下错误。
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-on-rails - rake 流产了! Heroku上未初始化的常量Rake::DSL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6727898/

相关文章:

ruby-on-rails - Ruby on Rails 用于开发实时应用程序?还是 Node.js?

ruby-on-rails - 你怎么知道一个数组是否有连续的相同元素?

ruby-on-rails - Rspec 和 Factory Girl 的 Rails 问题

Git推送失败,寻找部分文件历史删除

ruby-on-rails - 动态站点地图错误

ruby-on-rails-3 - 如何在rails的后台运行rake任务

ruby-on-rails - 基于 AJAX 的评论不会在正确的微博下发布 (Ruby on Rails)

postgresql - 无法运行 heroku rake db :migrate even with 'pg' gem installed

ruby-on-rails - rake db :migrate db:reset and db:schema:load之间的区别

node.js - 当我在线部署应用程序时,Heroku 会崩溃,但在我的本地计算机上它可以正常工作,没有错误