“没有这样的文件来加载 - 净/ SSH”从Ubuntu上轨控制器
-
06-09-2019 - |
题
我有一个很简单的控制器:
require 'net/ssh'
class MyController < ApplicationController
def foo
render :text => 'bar'
end
end
但是,当我要求的http://服务器:3000 /我的/ foo的我得到:
MissingSourceFile in MyController#foo
no such file to load -- net/ssh
安装宝石
> gem list net-ssh
*** LOCAL GEMS ***
net-ssh (2.0.11)
另外,我试图需要的净/ SSH'在IRB,和它的工作原理。
在myController的视窗工作正常,但无法在Ubuntu。
什么可能是错的?
解决方案
其他提示
在一个项目,我的工作,我们已经使用了的config / environment.rb文件中持有创业板需要的东西。所以
Rails::Initializer.run do |config|
# ...
config.gem 'net-ssh'
config.gem 'daemons'
config.gem 'slave'
config.gem 'vpim'
config.gem 'json'
# ...
end
我想你会需要“净SSH”而不是“净/ SSH”。然而,我们没有碰到哪里有导致故障的宝石的名字连字符的问题。然后,我们不得不这样做。
config.gem 'Ruby-IRC', :lib => 'IRC'
让版本可能需要你。所以这将是
config.gem 'net-ssh', :lib => 'net/ssh'
在轨道3.0的情况下 此解决方案,如果确定。 在yourapp添加此/ Gemfile中,
gem 'net-ssh
在我的情况下,因为它是一个独立的应用程序的红宝石,我只需要要求RubyGems的。
您也可以使用医生尼克的'gemsonrails“”并载入vendored宝石作为插件,请检查: http://gemsonrails.rubyforge.org
我认为,原来问题是,我使用的普通用户,而不是根:
$ gem install net-ssh
WARNING: Installing to ~/.gem since /usr/lib/ruby/gems/1.8 and
/usr/bin aren't both writable.
WARNING: You don't have /home/alex/.gem/ruby/1.8/bin in your PATH,
gem executables will not run.
所以,我想,导轨找不到这块宝石。
不隶属于 StackOverflow