2010-11-25 93 views
6

我有点在我的智慧在这里结束。我在OSX10.6上,我的宝石都搞砸了。我试图使用的宝石之一是Hashie。我在网上浏览过,有几个人似乎也遇到了类似的问题,但是我的解决方案似乎都不适用于我的案例。感谢您的期待。红宝石找不到安装的宝石

我所有的Ruby脚本/宝石安装在/opt/ruby-enterprise-1.8.7-2010.02:

Komputor:~$ which ruby gem irb rails 
/opt/ruby-enterprise-1.8.7-2010.02/bin/ruby 
/opt/ruby-enterprise-1.8.7-2010.02/bin/gem 
/opt/ruby-enterprise-1.8.7-2010.02/bin/irb 
/opt/ruby-enterprise-1.8.7-2010.02/bin/rails 

和示例宝石,HASHIE(和许多其他)安装:

Komputor:~ $ gem list -l | wc -l 
     67 
Komputor:~ $ gem list | grep hashie 
hashie (0.4.0) 
Komputor:gems $ cd /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems 
Komputor:gems $ ls | grep hashie 
drwxr-xr-x 13 root admin 442 Nov 24 17:13 hashie-0.4.0 

然而,当我尝试从IRB或脚本访问他们,这一切都失败:

Komputor:~ $ irb 
irb(main):001:0> require 'hashie' 
LoadError: no such file to load -- hashie 
    from (irb):1:in `require' 
    from (irb):1 
irb(main):002:0> 

一些环境瓦里ABLES: 宝石ENV:

Komputor:gems $ gem env 
RubyGems Environment: 
    - RUBYGEMS VERSION: 1.3.7 
    - RUBY VERSION: 1.8.7 (2010-04-19 patchlevel 253) [i686-darwin10.4.0] 
    - INSTALLATION DIRECTORY: /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8 
    - RUBY EXECUTABLE: /opt/ruby-enterprise-1.8.7-2010.02/bin/ruby 
    - EXECUTABLE DIRECTORY: /opt/ruby-enterprise-1.8.7-2010.02/bin 
    - RUBYGEMS PLATFORMS: 
    - ruby 
    - x86-darwin-10 
    - GEM PATHS: 
    - /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8 
    - /Users/<snip>/.gem/ruby/1.8 
    - GEM CONFIGURATION: 
    - :update_sources => true 
    - :verbose => true 
    - :benchmark => false 
    - :backtrace => false 
    - :bulk_threshold => 1000 
    - REMOTE SOURCES: 
    - http://rubygems.org/ 

$ PATH:

Komputor:gems $ echo $PATH 
/sw/bin:/sw/sbin:/opt/ruby-enterprise-1.8.7-2010.02/bin:/Applications/android-sdk-1.5/tools:/usr/brlcad/bin:/usr/local/mysql-5.0.67-osx10.5-x86_64/bin:/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/local/mongodb/bin:/sw/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/usr/X11/bin:/usr/X11R6/bin 

我会很高兴地张贴任何命令的输出进行调试。

感谢您的期待!

+3

你不必须“要求'rubygems'”,然后才能“需要'hashie'”? – 2010-11-25 00:41:20

+0

好的,这让我一半在那里。 我注意到rails在boot.rb文件中有这个。我的lib文件夹中的一个文件也需要hashie,并且我在require'hashie'行上添加了require'rubygems',并且它仍然给出相同的错误。 – voxobscuro 2010-11-25 00:54:58

回答

12

正如亚当范登堡指出,加载宝石之前,你需要require "rubygems"

一些框架可以加载这个给你,你可以将其设置为自动加载在你.irbrc如果你喜欢