需要宝石问题

时间:2012-08-03 11:27:38

标签: ruby-on-rails-3 rubygems

我已使用以下代码安装了google api客户端,并且已成功安装。

gem install google-api-client

我正在使用rails 3.0.3所以我还包括上面的行捆绑器并运行了成功的bundle install。

我也安装了rvm。并创建了一个gemset。

当我在终端中运行以下命令时:

gem environment | grep INSTALLATION | awk '{print $4}'

它给了我以下结果

/home/jamal/.rvm/gems/ruby-1.9.3-p194

当我尝试在项目目录外的scintilla中执行以下代码时。它给了我一个错误。

require 'rubygems'
require 'google/api_client'

错误:

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'

出现这种错误的主要原因是什么?

2 个答案:

答案 0 :(得分:1)

您的编辑器可能无法加载安装gem的特定gemset

请在您的问题中提供gem list google-api-client -d的输出。这样我就能弄明白究竟是什么了。

编辑: 通常发生的另一个问题是ruby的双重安装。当我们确实有系统级安装和rvm安装时,很多编辑都对此感到困惑。他们加载原始系统安装的ruby,它具有1.8.71.9.1等前缀,并在/usr/share/bin/中可用。你在rvm配置文件中安装了gem的位置。要解决此问题,您必须在选择正确的gemset

后从终端运行代码

答案 1 :(得分:0)

我收到了google/api_client (LoadError)消息,但它涉及另一个Google宝石。

gem 'google_drive', '~> 0.3.10'
gem 'google-api-client'

我刚删除了, '~> 0.3.10'部分,以防它出现兼容性问题。这就是诀窍:

Using google-api-client 0.7.1 (was 0.9.4)
Installing google_drive 1.0.6 (was 0.3.11)