自从我的Rails(2.3.17)应用程序升级到Ruby 1.9.3后,我丢失了ssh.sftp.upload!
方法,所以我正在尝试使用net-scp库,但我似乎无法在Rails中使用它。在irb
中,我可以要求文件正常,而不是在rails控制台中。
me@app:~/myapp$ script/console myapp
Loading myapp environment (Rails 2.3.17)
>> require 'net/scp'
MissingSourceFile: cannot load such file -- net/scp
from /path/to/myapp/shared/bundle/ruby/1.9.1/gems/activesupport-2.3.17/lib/active_support/dependencies.rb:184:in `require'
from /path/to/myapp/shared/bundle/ruby/1.9.1/gems/activesupport-2.3.17/lib/active_support/dependencies.rb:184:in `require'
from (irb):1
from /home/me/.rvm/rubies/ruby-1.9.3-p448/bin/irb:16:in `<main>'
但这似乎有效:
>> require 'net/ssh'
=> false
这是我的相关Gemfile.lock
$ cat Gemfile.lock | grep "net-scp" -n5
30- nokogiri (>= 1.4.4)
31- uuidtools (~> 2.1)
32- builder (2.1.2)
33- capistrano (2.14.2)
34- highline
35: net-scp (>= 1.0.0)
36- net-sftp (>= 2.0.0)
37- net-ssh (>= 2.0.14)
38- net-ssh-gateway (>= 1.1.0)
39- capistrano-ext (1.2.1)
40- capistrano (>= 1.0.0)
--
106- multi_xml (0.5.3)
107- mysql (2.9.0)
108- net-http-digest_auth (1.2.1)
109- net-http-persistent (2.8)
110- net-ldap (0.3.1)
111: net-scp (1.1.0)
112- net-ssh (>= 2.6.5)
113- net-sftp (2.1.1)
114- net-ssh (>= 2.6.5)
115- net-ssh (2.7.0)
116- net-ssh-gateway (1.2.0)
我该如何解决或绕过这个?
答案 0 :(得分:7)
显然它就像在net-scp
中包含Gemfile
一样简单,即使它包含在net-ssh
和capistrano
中。