“没有这样的文件加载” - 在Lion迁移后无法安装Ruby gem

时间:2012-02-17 07:57:40

标签: ruby rubygems osx-lion

我刚刚迁移到使用OS X Lion的新Mac。对于一些共鸣,我不能再安装新的Ruby宝石了。或者更确切地说:我可以安装它们,但找不到它们。

这是我的gem env

RubyGems Environment:
  - RUBYGEMS VERSION: 1.3.6
  - RUBY VERSION: 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin11.0]
  - INSTALLATION DIRECTORY: /Library/Ruby/Gems/1.8
  - RUBY EXECUTABLE: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
  - EXECUTABLE DIRECTORY: /usr/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - universal-darwin-11
  - GEM PATHS:
     - /Library/Ruby/Gems/1.8
     - /Users/Jens/.gem/ruby/1.8
     - /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - http://rubygems.org/

在irb中运行gem crack工作正常:

>> require 'rubygems'
=> false
>> require 'crack'
=> true

但是当我尝试在我的文本编辑器(Textwrangler)中做同样的事情时,我遇到了这个:

custom_require.rb:31: in `gem_original_require': no such file to load -- crack (LoadError)

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

也许指向正确的方向:我在Lion上遇到了安装不同ruby版本的问题。问题是一些调用ruby的程序(在我的情况下是git for pre-commit hook)的$ PATH变量不同;结果发现了另一个版本的ruby(并且该版本没有安装gems)。

所以要调试,请尝试打印出rubys(rubies?)和PATH变量的版本(类似print RUBY_VERSIONprint ENV["PATH"];也许是print ENV["GEM_HOME"]。看看是否导致任何事情。

仅供参考:对我来说,解决方案最终是从git 1.7.3升级到1.7.7;我不清楚为什么事情在1.7.3中不起作用(为什么PATH不同),但是谁在乎;它再次起作用:))