1

rubygem 遅延ジョブを使用していますが、rake タスクを正常に実行できません。https://github.com/collectiveidea/delayed_job/tree/v2.0を参考にしました。ところで、私はバンドラーを使用しています。

#Gemfile
gem 'delayed_job', '~>2.0.4'
#レーキファイル
始める
  gem 'delayed_job', '~>2.0.4'
  「遅延/タスク」が必要
レスキュー LoadError
  STDERR.puts "`bundle`を実行してdelayed_jobをインストールする"
終わり

rakejobs:work --traceの実行中に、以下のエラーが表示されます

rake/rdoctask は非推奨です。代わりに rdoc/task を使用してください (RDoc 2.4.2 以降)
** ジョブの呼び出し:work (first_time)
** merb_env を呼び出す (first_time)
** merb_env を実行
** 環境を呼び出す (first_time)
** 実行環境
** ジョブの実行:work
レーキが中止されました!
匿名モジュールには、参照される名前がありません
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:585:in `to_constant_name'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:391:in `qualified_name_for'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:104:in `const_missingでレスキュー'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:94:in `const_missing'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/delayed_job-2.0.6/lib/delayed/tasks.rb:13:in `ブロック (2 レベル) in '
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/rake-0.9.2/lib/rake/task.rb:205:in `call'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/rake-0.9.2/lib/rake/task.rb:205:in `block in execute'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/rake-0.9.2/lib/rake/task.rb:200:in `each'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/rake-0.9.2/lib/rake/task.rb:200:in `execute'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/rake-0.9.2/lib/rake/task.rb:158:in `block in invoke_with_call_chain'
/Users/me/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/rake-0.9.2/lib/rake/task.rb:151:in `invoke_with_call_chain'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/rake-0.9.2/lib/rake/task.rb:144:in `invoke'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/rake-0.9.2/lib/rake/application.rb:112:in `invoke_task'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/rake-0.9.2/lib/rake/application.rb:90:in `ブロック (2 レベル) in top_level'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/rake-0.9.2/lib/rake/application.rb:90:in `each'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/rake-0.9.2/lib/rake/application.rb:90:in `block in top_level'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/rake-0.9.2/lib/rake/application.rb:129:in `standard_exception_handling'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/rake-0.9.2/lib/rake/application.rb:84:in `top_level'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/rake-0.9.2/lib/rake/application.rb:62:in `block in run'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/rake-0.9.2/lib/rake/application.rb:129:in `standard_exception_handling'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/rake-0.9.2/lib/rake/application.rb:59:in `run'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/gems/rake-0.9.2/bin/rake:32:in `'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/bin/rake:19:in `load'
/Users/me/.rvm/gems/ruby-1.9.2-p180@suga/bin/rake:19:in `'
タスク: TOP => 仕事:仕事

Delayed Job Rake Task Failingを試しましたが、問題は解決しませんでした。

ここで何が起こっているのか誰でも説明できますか? ありがとう。

4

2 に答える 2

1

Rails バージョン 2.3 で gem を使用すると DJ が正しく動作しない理由がよくわかりません。これで問題が発生しないことを願っていますanonymous module

于 2011-07-18T15:12:22.637 に答える
1

ああ!DJ のデバッグは、ご存じのように面倒です。

このエラー メッセージ:

=> Aonymous modules have no name to be referenced by

モデルのいずれかのスペルが間違っていることを意味します。

例:Categorizatoinの代わりにCategorizatoin.

DJ でモデルを確認し、すべてのモデルのスペルを確認してください。

于 2011-07-13T10:37:46.053 に答える