Heroku ошибка рейка - PullRequest
       28

Heroku ошибка рейка

2 голосов
/ 16 июня 2011

Когда я запускаю rake db:migrate на Heroku, я получаю сообщение об ошибке.У меня нет проблем с его локальным запуском.

Это прекрасно работает:

C:\unaton>rake db:migrate

Но когда я использую

C:\unaton>heroku rake db:migrate

, я получаю следующую ошибку.

(in /app)
rake aborted!
uninitialized constant Rake::DSL
/app/.bundle/gems/ruby/1.9.1/gems/rake-0.9.2/lib/rake/tasklib.rb:8:in `<class:Ta
skLib>'
/app/.bundle/gems/ruby/1.9.1/gems/rake-0.9.2/lib/rake/tasklib.rb:6:in `<module:R
ake>'
/app/.bundle/gems/ruby/1.9.1/gems/rake-0.9.2/lib/rake/tasklib.rb:3:in `<top (req
uired)>'
/app/.bundle/gems/ruby/1.9.1/gems/rake-0.9.2/lib/rake/rdoctask.rb:20:in `<top (r
equired)>'
/app/.bundle/gems/ruby/1.9.1/gems/railties-3.0.7/lib/rails/tasks/documentation.r
ake:1:in `<top (required)>'
/app/.bundle/gems/ruby/1.9.1/gems/railties-3.0.7/lib/rails/tasks.rb:15:in `block
 in <top (required)>'
/app/.bundle/gems/ruby/1.9.1/gems/railties-3.0.7/lib/rails/tasks.rb:6:in `each'
/app/.bundle/gems/ruby/1.9.1/gems/railties-3.0.7/lib/rails/tasks.rb:6:in `<top (
required)>'
/app/.bundle/gems/ruby/1.9.1/gems/railties-3.0.7/lib/rails/application.rb:214:in
 `initialize_tasks'
/app/.bundle/gems/ruby/1.9.1/gems/railties-3.0.7/lib/rails/application.rb:139:in
 `load_tasks'
/app/.bundle/gems/ruby/1.9.1/gems/railties-3.0.7/lib/rails/application.rb:77:in
`method_missing'
/app/Rakefile:7:in `<top (required)>'
/usr/ruby1.9.2/lib/ruby/1.9.1/rake.rb:2373:in `load'
/usr/ruby1.9.2/lib/ruby/1.9.1/rake.rb:2373:in `raw_load_rakefile'
/usr/ruby1.9.2/lib/ruby/1.9.1/rake.rb:2007:in `block in load_rakefile'
/usr/ruby1.9.2/lib/ruby/1.9.1/rake.rb:2058:in `standard_exception_handling'
/usr/ruby1.9.2/lib/ruby/1.9.1/rake.rb:2006:in `load_rakefile'
/usr/ruby1.9.2/lib/ruby/1.9.1/rake.rb:1991:in `run'
/usr/ruby1.9.2/bin/rake:31:in `<main>'

Как мне решить эту проблему?

Ответы [ 2 ]

7 голосов
/ 16 июня 2011

Либо обновите до rails 3.0.9, либо добавьте это в Gemfile

gem "rake", "0.8.7"

0 голосов
/ 09 июля 2011

С http://softwaregravy.com/rake-not-backwards-compatible/

Вот ошибка:

грабли прерваны! неинициализированная константа Rake :: DSL /usr/ruby1.9.2/lib/ruby/1.9.1/rake.rb:2482:in const_missing' /app/.bundle/gems/ruby/1.9.1/gems/rake-0.9.1/lib/rake/tasklib.rb:8:in /app/.bundle/gems/ruby/1.9.1/gems/rake-0.9.1/lib/rake/tasklib.rb:6:in ` '

Закрепите рейк до 0.8.7 в вашем Gemfile

драгоценный камень 'грабли', '0.8.7'

Обратите внимание, вы, вероятно, уже заблокированы в 0.9.X, поэтому вам нужно сделать:

комплектация обновления рейка

...