Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/54.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 无法在运行时加载gem-无法加载此类文件_Ruby On Rails_Gem_Gemfile_Faker - Fatal编程技术网

Ruby on rails 无法在运行时加载gem-无法加载此类文件

Ruby on rails 无法在运行时加载gem-无法加载此类文件,ruby-on-rails,gem,gemfile,faker,Ruby On Rails,Gem,Gemfile,Faker,我的档案中有以下声明 gem'foo',:git=>'git@github.com:bar/foo.git' 在我运行bundle安装之后,它能够在以下文件夹下检索gem $ls~/.rvm/gems/ruby-1.9.3-p0@samples/捆扎机/gems/foo-4dc3d7bf8271 但是在我的程序中使用require'foo'并运行gem会引发以下问题 custom_require.rb:36:in'require':无法加载这样的文件--foo (加载错误) 我如何解决这个问题

我的档案中有以下声明

gem'foo',:git=>'git@github.com:bar/foo.git'

在我运行bundle安装之后,它能够在以下文件夹下检索gem

$ls~/.rvm/gems/ruby-1.9.3-p0@samples/捆扎机/gems/foo-4dc3d7bf8271

但是在我的程序中使用require'foo'并运行gem会引发以下问题

custom_require.rb:36:in'require':无法加载这样的文件--foo (加载错误)

我如何解决这个问题

编辑


确保在从
Gemfile
中请求任何gem之前调用了
require'bundler/setup'
。但是在Rails的情况下,它肯定会发生,因为
Rails服务器
调用
config/boot.rb
,其中包含这样的行。

hrm,我通常不需要gem,但我在上面看到的另一件事是gem名称后面应该跟一个版本号。foo-1.3.4,这仅仅是因为你的例子吗?foo-4dc3d7bf8271-这是因为我分叉了一个项目并对其进行了一些更改,因此我试图直接从Github使用这个gem在你的需求和检查之前添加一行
放置$:
(或者使用
Rails.logger.debug$:
,如果它的Rails应用程序是这样的话),无论您的gem路径是否在列表中。另外请检查,文件
foo.rb
是否位于其路径内,它的名称可能稍有不同。@Nash-当我尝试运行示例ruby程序时,作为问题的一部分添加了上述错误。也许,您需要指定如何要求该gem,如:
gem'dylansm wirble',:require=>wirble'
/home/ec2-user/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1
/home/ec2-user/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/i686-linu
x
/home/ec2-user/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby
/home/ec2-user/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/vendor_ruby/1.9.1
/home/ec2-user/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/vendor_ruby/1.9.1/i686-li
nux
/home/ec2-user/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/vendor_ruby
/home/ec2-user/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1
/home/ec2-user/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/i686-linux
/home/ec2-user/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/
custom_require.rb:36:in `require': cannot load such file -- foo (LoadError)
        from /home/ec2-user/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.
9.1/rubygems/custom_require.rb:36:in `require'