ruby - Gem :Module 的未定义方法 `searcher'

标签 ruby rake

当我运行 bundle exec rake db:initial_setup 时,出现错误:

rake aborted! undefined method `searcher' for Gem:Module.

我该如何解决这个问题?

这里是 bundle exec rake db:initial_setup --trace 的输出

rake aborted!
undefined method `searcher' for Gem:Module
/home/jesse/workspace/canvas/lib/tasks/hair_trigger.rake:2:in `<top (required)>'
/usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.17/lib/active_support/dependencies.rb:171:in `load'
/usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.17/lib/active_support/dependencies.rb:171:in `block in load_with_new_constant_marking'
/usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.17/lib/active_support/dependencies.rb:547:in `new_constants_in'
/usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.17/lib/active_support/dependencies.rb:171:in `load_with_new_constant_marking'
/usr/local/lib/ruby/gems/1.9.1/gems/rails-2.3.17/lib/tasks/rails.rb:14:in `block in <top (required)>'
/usr/local/lib/ruby/gems/1.9.1/gems/rails-2.3.17/lib/tasks/rails.rb:14:in `each'
/usr/local/lib/ruby/gems/1.9.1/gems/rails-2.3.17/lib/tasks/rails.rb:14:in `<top (required)>'
/home/jesse/workspace/canvas/Rakefile:10:in `require'
/home/jesse/workspace/canvas/Rakefile:10:in `<top (required)>'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.9.6/lib/rake/rake_module.rb:25:in `load'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.9.6/lib/rake/rake_module.rb:25:in `load_rakefile'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.9.6/lib/rake/application.rb:604:in `raw_load_rakefile'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.9.6/lib/rake/application.rb:89:in `block in load_rakefile'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.9.6/lib/rake/application.rb:160:in `standard_exception_handling'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.9.6/lib/rake/application.rb:88:in `load_rakefile'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.9.6/lib/rake/application.rb:72:in `block in run'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.9.6/lib/rake/application.rb:160:in `standard_exception_handling'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.9.6/lib/rake/application.rb:70:in `run'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.9.6/bin/rake:37:in `<top (required)>'
/usr/local/bin/rake:23:in `load'
/usr/local/bin/rake:23:in `<main>'

有什么建议吗?

谢谢!

最佳答案

这是因为 Gem.searcher 已被弃用,看来您最近更新了 ruby​​ gems。 使用命令检查你的versiob

$ gem -v

你可以使用命令回到任何旧版本

$ rvm rubygems 1.8.24

关于ruby - Gem :Module 的未定义方法 `searcher',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15651371/

相关文章:

ruby-on-rails - ruby - bundle 安装/更新太慢

ruby - 为什么 rake 任务输出总是以 test-unit 之类的结果结尾?

ruby-on-rails - 执行数据库 :test:prepare from another rake task

ruby-on-rails - 为什么我会在生产 rake 任务中得到 `no such file to load -- ruby-debug` ?

ruby - 在类变量、rake 任务和 cron 上使用互斥锁的 Rails

ruby-on-rails - 比较 bigdecimal 输出

ruby-on-rails - Rails validates_associated 与模型的错误信息

ruby-on-rails - ( ruby ) ruby 套接字 : how to create a POST request?

ruby-on-rails - Rails 和 Rake 任务 - 如何在 rake 任务文件中定义的自定义类中调用 Rails 方法

ruby-on-rails - Rails Assets 管道和摘要值