Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/22.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_Ruby_Rubygems - Fatal编程技术网

Ruby on rails 没有这样的文件来加载/丢失这些必需的gem

Ruby on rails 没有这样的文件来加载/丢失这些必需的gem,ruby-on-rails,ruby,rubygems,Ruby On Rails,Ruby,Rubygems,我有一个“失踪的宝石”的问题。 执行rake gems后:安装 >> rake gems:install (in /some/path) gem install google-api-client --version "= 0.7.1" Successfully installed uuidtools-2.1.5 Successfully installed google-api-client-0.7.1 2 gems installed Installing ri documen

我有一个“失踪的宝石”的问题。 执行rake gems后:安装

 >> rake gems:install
(in /some/path)
gem install google-api-client --version "= 0.7.1"
Successfully installed uuidtools-2.1.5
Successfully installed google-api-client-0.7.1
2 gems installed
Installing ri documentation for uuidtools-2.1.5...
Installing ri documentation for google-api-client-0.7.1...
Installing RDoc documentation for uuidtools-2.1.5...
Installing RDoc documentation for google-api-client-0.7.1...
在那里,我们可以看到一个宝石列表的宝石存在

 >> gem list | grep google
google-api-client (0.7.1)
启动我的rail应用程序时,我会得到:

Missing these required gems:
  google-api-client  

You're running:
  ruby 1.8.7.302 at /usr/bin/ruby1.8
  rubygems 1.3.7 at /some/path/.gem/ruby/1.8, /usr/lib/ruby/gems/1.8
然后Rails建议我执行一个“rake gems:install”来解决这个问题

我只安装了一个ruby版本:ruby 1.8.7-p302

 >> which ruby
/usr/bin/ruby

 >> ls -l /usr/bin/ruby
lrwxrwxrwx 1 root root 7 Aug 26  2013 /usr/bin/ruby -> ruby1.8

 >> ruby -v
ruby 1.8.7 (2010-08-16 patchlevel 302) [x86_64-linux]

 >> gem env
RubyGems Environment:
  - RUBYGEMS VERSION: 1.3.7
  - RUBY VERSION: 1.8.7 (2010-08-16 patchlevel 302) [x86_64-linux]
  - INSTALLATION DIRECTORY: /usr/lib/ruby/gems/1.8
  - RUBY EXECUTABLE: /usr/bin/ruby1.8
  - EXECUTABLE DIRECTORY: /usr/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-linux
  - GEM PATHS:
     - /usr/lib/ruby/gems/1.8
     - /root/.gem/ruby/1.8
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - http://rubygems.org/
我不知道这个问题是从哪里来的

(类似地,如果我只是制作一个ruby测试文件

require "rubygems"
require "google-api-client"
它输出相同的错误:

 >> ruby test.rb 
/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- google-api-client (LoadError)
        from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
        from test.rb:2
)

编辑:我不在此应用程序上使用捆绑包

你有解决这个问题的线索吗


谢谢

您将更新捆绑包版本,然后更新gem

嗯,这只是一个错误的要求

require "google/api_client" 
而不是

require "google-api-client"

谢谢您的帮助。

在安装gem之前请先进行捆绑更新。我们的应用程序不使用bundler,也没有相关的gem文件。我仍然可以做一个gem更新…在运行rake任务之前尝试sudo apt get update。您似乎缺少一些依赖项库文件。希望这有帮助,还是没什么。已执行apt get update+升级,但仍然缺失。我来看看这些依赖项!如果您使用的是rails,那么您应该使用bundler-除非您真的知道自己在做什么。。。但是如果你在不知道如何修复的情况下遇到了宝石依赖性问题。。。那么你可能应该只使用Bundle我不使用Bundle。即使在gem更新之后,gem仍然丢失。