“没有这样的文件来加载 - 净/ SSH”从Ubuntu上轨控制器('no such fil

2019-09-30 04:08发布

我有一个非常简单的控制器:

require 'net/ssh'

class MyController < ApplicationController
    def foo
        render :text => 'bar'
    end
end

但是,当我请求HTTP://服务器:3000 /我/富我得到:

MissingSourceFile in MyController#foo 
no such file to load -- net/ssh

创业板安装

> gem list net-ssh

*** LOCAL GEMS ***
net-ssh (2.0.11)

另外,我想需要IRB“网/ SSH”,和它的作品。

工作myController的罚款在Windows,但未能在Ubuntu。

什么可能是错误的?

Answer 1:

这可以帮助:

Rails的Gem依赖和插件错误

这也是值得关注:

Railscasts:Gem依赖



Answer 2:

在一个项目中我的工作,我们已经使用了的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'


Answer 3:

在轨3.0这个解决方案,如果OK的情况下。 在yourapp添加此/ Gemfile中,

gem 'net-ssh


Answer 4:

在我的情况,因为它是一个独立的应用程序的红宝石,我只需要要求RubyGems的。



Answer 5:

您还可以使用医生尼克的'gemsonrails“”并载入vendored宝石作为插件,请检查: http://gemsonrails.rubyforge.org



Answer 6:

我认为,原来的问题是,我用的不是根普通用户:

$ 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.

所以,我想,导轨找不到这种宝石。



文章来源: 'no such file to load — net/ssh' from rails Controller on Ubuntu