0

之前的问题中有一些案例,但他们的答案对我没有用,因为我使用的是 Windows 7,而他们使用的是 MAC 或 Linux。

以下是有关我的 Ruby 安装的一些详细信息:

C:\Ruby\rubygems-1.3.1>gem env

RubyGems Environment:

  RUBYGEMS VERSION: 1.3.1
  RUBY VERSION: 1.8.6 (2008-08-11 patchlevel 287) [i386-mswin32]
  INSTALLATION DIRECTORY: C:/Ruby/lib/ruby/gems/1.8
  RUBY EXECUTABLE: C:/Ruby/bin/ruby.exe
  EXECUTABLE DIRECTORY: C:/Ruby/bin
  RUBYGEMS PLATFORMS:
    ruby
    x86-mswin32-60
  GEM PATHS:
     C:/Ruby/lib/ruby/gems/1.8
     C:/Users/Omar H/.gem/ruby/1.8
  GEM CONFIGURATION:
     :update_sources => true
     :verbose => true
     :benchmark => false
     :backtrace => false
     :bulk_threshold => 1000
     :sources => ["http://production.s3.rubygems.org/"]
  REMOTE SOURCES:
     http://production.s3.rubygems.org/

我正在尝试使用 JSON gem,所以我的代码是这样开始的:

require 'rubygems'
require 'json/pure'

该代码用于sketchup插件。每当我打开sketchup 并且sketchup 尝试加载此文件时,我都会收到此错误:

Error Loading File addAtt.rb
no such file to load -- rubygems

我查看了应该安装 gem 的目录,并在那里找到了 gem C:\Ruby\lib\ruby\gems\1.8\gems:.

我什至检查过我没有丢失 libzlib-ruby 或 libyaml-ruby 文件,因为这也是我看到的可能导致此问题的原因之一,但我确实有这些文件。

这次尝试是使用我已安装的 json-pure gem。

我知道安装 Sketchup 时不会安装完整的 ruby​​ 库,这就是为什么我已经下载了所需的其余 ruby​​ 文件并从这个链接满足 Sketchup 的 ruby​​ 版本:http ://rubyforge.org/frs/下载.php/47082/ruby186-27_rc2.exe。也许我的问题的原因可能是我有多个 ruby​​ 版本并且使用了其他版本的文件,但我不知道如何找出或修复它。

@Sachin Singh 我尝试使用 gem update --system 命令,结果如下:

C:\Users\Omar H>gem update --system
Updating RubyGems
Updating rubygems-update
ERROR:  While executing gem ... (Gem::InstallError)
    rubygems-update requires Ruby version >= 1.8.7
4

1 回答 1

0

我相信您需要将标准库路径添加到 $LOAD_PATH。这就是 Ruby 知道在哪里可以找到“rubygems”的方式。默认情况下,SketchUp 不会在 $LOAD_PATH 中添加任何库路径。

于 2013-08-28T03:57:24.220 回答