Rails 2.2.3 и новейший рейк - PullRequest
       8

Rails 2.2.3 и новейший рейк

0 голосов
/ 24 февраля 2012

У меня проблема с граблями.Когда я пытался выполнить какую-либо рейк-задачу, я получал следующую ошибку: uninitialized constant Rake::DSL.Конечно, я искал в stackoverflow перед этим вопросом и нашел несколько полезных постов, например этот: https://stackoverflow.com/a/6686628/698919

К сожалению, после исправления выше я все еще получаю другие ошибки, которые не упомянуты ни в одном посте:1005 *

    rake gems:install
    /var/lib/gems/1.8/gems/rake-0.9.2.2/lib/rake/file_utils.rb:9: warning: already       initialized constant RUBY
    /var/lib/gems/1.8/gems/rake-0.9.2.2/lib/rake/file_utils.rb:86: warning: already                 initialized constant LN_SUPPORTED
    rake aborted!
    undefined method `deprecate' for #<Rake::Application:0x7f4c3b3eeb38>
    /home/arti/domeny/domain/ror/Rakefile:8

Мой Rakefile:

    require(File.join(File.dirname(__FILE__), 'config', 'boot'))
    require 'rake/dsl_definition'
    require 'rake'
    require 'rake/testtask'
    require 'rake/rdoctask'
    require 'tasks/rails'

Я также пытался понизить Rake до версии 0.8.7.После этого задачи rake работали правильно, но другие гемы не работали, и мне пришлось вернуться к последней версии rake (0.9.2.2).Я знаю, что мне нужно как можно скорее перейти на новейшую версию Rails, но теперь мне нужно временное исправление.Я могу справиться без миграций, но мне нужны грабли для индексации моделей с помощью think_sphinx.

1 Ответ

0 голосов
/ 26 февраля 2012

Я исправил это. Вот правильный Rakefile:

    require(File.join(File.dirname(__FILE__), 'config', 'boot'))
    require 'rake/dsl_definition'
    require 'rake'
    include Rake::DSL
    require 'rake/testtask'
    require 'rdoc/task'

    require 'tasks/rails'

    begin
      require 'thinking_sphinx/tasks'
    rescue LoadError
      puts "You can't load Thinking Sphinx tasks unless the thinking-sphinx gem is $
    end
...