0

我们正在尝试将 rails 从 4.2 升级到 5.1.4 以及 resque gem。但我们同样得到了以下结果。

文件:/lib/tasks/resque.rake 需要'resque/tasks' 需要'resque-scheduler' 需要'resque/scheduler/server' 需要'resque/scheduler/tasks' 任务“resque:setup” => :environment do ENV ['QUEUE'] = '*' ENV['COUNT'] = '5' 需要 'resque' 需要 'resque-scheduler' 结束

*Error: rake aborted!
LoadError: No such file to load -- badge_label_helper.rb*

_Trace : QUEUE= rake environment resque:work --trace ** 调用环境 (first_time) ** 执行环境 ** 调用 resque:work (first_time) ** 调用 resque:preload (first_time) ** 调用 resque:setup (first_time) ** 调用环境 ** 执行 resque:setup ** 执行 resque:preload rake 中止!LoadError: No such file to load --badge_label_helper.rb /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:476:in load' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:476:inblock in load_file ' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:661:in new_constants_in' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:475:inload_file' /Users/dinilv/.rvm/gems/ruby- 2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:374:inblock in require_or_load' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:36:in阻塞在 load_interlock' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies/interlock.rb:12:in Exclusive' block in loading' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/concurrency/share_lock.rb:149:in/Users/dinilv/.rvm /gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies/interlock.rb:11:in loading' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:36:inload_interlock' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/ activesupport-5.1.4/lib/active_support/dependencies.rb:357: require_or_load' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:335:inindepend_on' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies.rb :251:inrequire_dependency' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/railties-5.1.4/lib/rails/engine.rb:476:in块(2 个级别)在 eager_load!/Users/dinilv/.rvm/gems/ruby-2.4.2/gems/railties-5.1.4/lib/rails/engine.rb:475:ineach' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/railties-5.1.4/lib/rails/engine.rb:475:in块在 eager_load 中!/Users/dinilv/.rvm/gems/ruby-2.4.2/gems/railties-5.1.4/lib/rails/engine.rb:473:ineach' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/railties-5.1.4/lib/rails/engine.rb:473:in急切的加载!/Users/dinilv/.rvm/gems/ruby-2.4.2/gems/railties-5.1.4/lib/rails/engine.rb:354:in eager_load!' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/resque-1.27.4/lib/resque/tasks.rb:45:ineach' /Users/dinilv/.rvm/gems/ruby-2.4 .2/gems/resque-1.27.4/lib/resque/tasks.rb:45:inblock (2 levels) in <top (required)>' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/rake-12.1.0/lib/rake/task.rb:251:in块执行'/Users/dinilv/.rvm/gems/ruby-2.4.2/gems/rake-12.1.0/ lib/rake/task.rb:251:ineach' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/rake-12.1.0/lib/rake/task.rb:251:in执行'/Users/dinilv/.rvm/gems/ruby-2.4.2/gems/rake-12.1.0/lib/rake/task.rb:195:in block in invoke_with_call_chain' /Users/dinilv/.rvm/rubies/ruby-2.4.2/lib/ruby/2.4.0/monitor.rb:214:inmon_synchronize' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/rake-12.1.0/lib/rake/task.rb:188:ininvoke_with_call_chain' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/rake-12.1.0/lib/rake/task.rb:217:in块 in invoke_prerequisites' /Users/dinilv/.rvm/gems/ruby -2.4.2/gems/rake-12.1.0/lib/rake/task.rb:215:in each' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/rake-12.1.0/lib/rake/task.rb:215:ininvoke_prerequisites' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/rake-12.1.0/ lib/rake/task.rb:194:in block in invoke_with_call_chain' /Users/dinilv/.rvm/rubies/ruby-2.4.2/lib/ruby/2.4.0/monitor.rb:214:inmon_synchronize'/Users/dinilv/.rvm/gems/ruby-2.4.2/gems/rake-12.1.0/lib/rake/task.rb:invoke_with_call_chain' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/rake-12.1.0/lib/rake/task.rb:181:in调用' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/rake-12.1.0/lib/rake/application.rb:153:in invoke_task' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/rake-12.1.0/lib/rake/application.rb:109:inblock (2 levels) in top_level' /Users/dinilv/ .rvm/gems/ruby-2.4.2/gems/rake-12.1.0/lib/rake/application.rb:109:in each' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/rake-12.1.0/lib/rake/application.rb:109:inblock in top_level' /Users/dinilv/.rvm/gems/ruby-2.4.2/ gems/rake-12.1.0/lib/rake/application.rb:118:in run_with_threads' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/rake-12.1.0/lib/rake/application.rb:103:intop_level' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/rake-12.1.0/lib/rake/application .rb:81:in block in run' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/rake-12.1.0/lib/rake/application.rb:179:instandard_exception_handling' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/rake-12.1.0/lib/rake/application.rb:78:in run' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/rake-12.1.0/exe/rake:27:in'/Users/dinilv/。 rvm/gems/ruby-2.4.2/bin/rake:23:in load' /Users/dinilv/.rvm/gems/ruby-2.4.2/bin/rake:23:in' /Users/dinilv/.rvm/gems/ruby-2.4.2/bin/ruby_executable_hooks:15:ineval' /Users/dinilv/.rvm/gems/ruby-2.4.2/bin/ruby_executable_hooks:15:in' 任务: TOP => resque:work => resque:preload_ 命令 :QUEUE=* rake environment resque:work " _rake aborted! LoadError: No such file to load -- badge_label_helper.rb /Users/dinilv/.rvm/gems/ ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:476:in load' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:476:inblock in load_file' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1 .4/lib/active_support/dependencies.rb:661:in new_constants_in' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:475:inload_file'/Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:374:在block in require_or_load' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:36:inload_interlock 的块中'/Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies/interlock.rb:12:in Exclusive block in loading' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/concurrency/share_lock.rb:149:in'/Users/dinilv/。 rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies/interlock.rb:11:inloading' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:36:inload_interlock' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:357:independ_on require_or_load' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:335:in' /Users/dinilv/.rvm/gems/ruby -2.4.2/gems/activesupport-5.1.4/lib/active_support/dependencies.rb:251:在require_dependency' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/railties-5.1.4/lib/rails/engine.rb:476:ineager_load 中的块(2 级)!/Users/dinilv/.rvm/gems/ruby-2.4.2/gems/railties-5.1.4/lib/rails/engine.rb:475:ineach' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/railties-5.1.4/lib/rails/engine.rb:475:in块在 eager_load 中!/Users/dinilv/.rvm/gems/ruby-2.4.2/gems/railties-5.1.4/lib/rails/engine.rb:473:in each' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/railties-5.1.4/lib/rails/engine.rb:473:ineager_load!/Users/dinilv/.rvm/gems/ruby-2.4.2/gems/railties-5.1.4/lib/rails/engine.rb:354:in eager_load!' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/resque-1.27.4/lib/resque/tasks.rb:45:ineach' /Users/dinilv/.rvm/gems/ruby-2.4 .2/gems/resque-1.27.4/lib/resque/tasks.rb:45:in block (2 levels) in <top (required)>' /Users/dinilv/.rvm/gems/ruby-2.4.2/gems/rake-12.1.0/exe/rake:27:in' /Users/dinilv/.rvm/gems/ruby-2.4.2/bin/ruby_executable_hooks:15:ineval' /Users/dinilv/.rvm/gems/ruby-2.4.2/bin/ruby_executable_hooks:15:in' 任务:TOP => resque:work => resque:preload(通过使用 --trace 运行任务查看完整跟踪)_ "*

4

1 回答 1

0

我遇到了完全相同的奇怪问题。它以前可以工作,但是当我重新组织我的 Gemfile 时它坏了。经过大量尝试,我找到了解决方案:resque-web 可能不会被放入一个组中。前:

group :production do
  gem 'resque-web', require: 'resque_web' # This will break
  gem 'resque-pool'
end

后:

gem 'resque-web', require: 'resque_web' # Now it works
group :production do
  gem 'resque-pool'
end

希望我能帮上忙。

于 2017-12-06T10:25:47.160 回答