在OSX Mountain Lion上使用Ruby 2.0.0p0的Nokogiri(没有这样的文件加载)

时间:2013-04-07 06:57:48

标签: ruby-on-rails ruby nokogiri

我在运行OSX 10.8.3,Ruby 2.0.0p0,Rails 3.2.13的系统上安装了nokogiri。尝试运行以

开头的简单测试脚本时
require 'rubygems'
require 'nokogiri'
require 'open-uri'

我收到错误:

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- nokogiri (LoadError)
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /Users/jerome/Documents/MyFiles/Developer/testruby.rb:2

nokogiri目前是否支持OSX上的Ruby 2.0?

编辑:从Sublime Text 2构建时出现此问题。脚本在irb上运行正常。

2 个答案:

答案 0 :(得分:1)

支持Nokogiri。

在最初的问题中,我一直在使用Sublime Text 2构建。这产生了错误,而在irb上这样做很好。

来自http://rubenlaguna.com/wp/2012/12/07/sublime-text-2-rvm-rspec-take-2/的解决方案为我工作。这改变了Sublime找到Ruby的默认路径。

解决方案:

更新〜/ Library / Application \ Support / Sublime \ Text \ 2 / Packages / Ruby / Ruby.sublime-build to

{
  "env":{
      "PATH":"${HOME}/.rvm/bin:${PATH}"
  },
  "cmd": ["rvm-auto-ruby", "$file"],
  "file_regex": "^(...*?):([0-9]*):?([0-9]*)",
  "selector": "source.ruby"
}

另外,我为我最近没有发布我从Sublime Text 2收到错误的错误道歉。

答案 1 :(得分:0)

错误输出中显示的路径表明您使用的是系统默认版本的Ruby(1.8.7),因为它引用了/System/Library/Frameworks/Ruby.framework/Versions/1.8。您可能需要确保使用正确的ruby二进制文件2.0。

如果您是通过RVM安装的,则可以运行rvm use 2.0.0之类的内容,或在源项目中使用.ruby-version.rvmrc文件。或者只是直接调用2.0.0 ruby二进制文件。