2011-07-03 60 views
0

我運行軌道3.1rc4,並保持運行到這個錯誤消息在我resque隊列的Net :: SFTP不斷拋出的錯誤在resque

uninitialized constant Net::SFTP隨着異常「NameError」

在我的Gemfile我已經包括:

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

我包括net-scp,以防萬一它是依賴項。我用直接的ruby測試了rails和redis外部的resque任務,其中我需要'net/ssh'和'net/sftp'。整件事情都很完美。然而,同樣的resque任務不斷拋出uninitialized constant Net::SFTP。當我註釋掉Net :: SSH部分之前的sftp部分時,我最終得到了一個類似的錯誤。

uninitialized constant Net::SSH

我需要改變的東西在我的Gemfile或需要我resque類這些寶石?爲什麼我必須在ruby中使用'net/ssh',而我必須在rails的gemfile中使用'net-ssh'?

在此先感謝!

回答

0

你在你的rake任務中加載了環境嗎?

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

默認情況下,Resque是獨立運行的。如果您需要訪問應用程序包加載的內容,則需要加載環境。