0

Rails 3.1rc4 を実行していますが、resque キューでこのエラー メッセージが表示され続けます。

uninitialized constant Net::SFTP「NameError」を除いて

私のgemfileには以下が含まれています:

gem 'net-sftp'
gem 'net-ssh'
gem 'net-scp'

依存関係がある場合に備えて、net-scp を含めました。「net/ssh」と「net/sftp」が必要な、Rails と redis の外部の resque タスクをストレート Ruby でテストしました。全体が完璧に機能しました。ただし、同じ resque タスクが継続的にuninitialized constant Net::SFTP. Net::SSH セクションの前にある sftp セクションをコメントアウトすると、同様のエラーが発生します。

uninitialized constant Net::SSH

gemfile で何かを変更する必要がありますか、それとも resque クラスでこれらの gem を要求する必要がありますか? Rails の gemfile では「net-ssh」を使用する必要があるのに、Ruby では「net/ssh」を使用する必要があるのはなぜですか?

前もって感謝します!

4

1 に答える 1

0

rake タスクに環境をロードしましたか?

task "resque:setup" => :environment do
  # you can leave this blank
end

デフォルトでは、Resque はスタンドアロンで実行されます。アプリ バンドルによって読み込まれるものにアクセスする必要がある場合は、環境を読み込む必要があります。

于 2011-07-03T15:02:40.603 に答える