警告:Nokogiri是针对LibXML版本2.8.0构建的,但动态加载了2.9.0

时间:2013-12-18 20:03:04

标签: ruby-on-rails-3 nokogiri libxml-ruby

我已升级到Mavericks OS X,我开始收到此警告。

➜d3git :( master)rspec

警告:Nokogiri是针对LibXML版本2.8.0构建的,但已动态加载2.9.0

➜d3git :(主人)✗nokogiri -v

Nokogiri(1.6.0)

---
warnings: []
nokogiri: 1.6.0
ruby:
  version: 1.9.3
  platform: x86_64-darwin13.0.0
  description: ruby 1.9.3p448 (2013-06-27 revision 41675) [x86_64-darwin13.0.0]
  engine: ruby
libxml:
  binding: extension
  source: packaged
  libxml2_path: /Users/tyler/.rvm/gems/ruby-1.9.3-p448@d3/gems/nokogiri-1.6.0/ports/x86_64-apple-darwin13.0.0/libxml2/2.8.0
  libxslt_path: /Users/tyler/.rvm/gems/ruby-1.9.3-p448@d3/gems/nokogiri-1.6.0/ports/x86_64-apple-darwin13.0.0/libxslt/1.1.26
  compiled: 2.8.0
  loaded: 2.8.0

1 个答案:

答案 0 :(得分:0)

这个问题在StackOverflow上已有很多答案。基本上你只需要卸载/重新安装gem,一切都会好的。如果你想要一个较旧版本的libxml2,那么你将很难(就像我现在这样)。

就在你现在,“nokogiri -v”不会给你与从ruby或rails加载gem时使用的相同版本,我不知道为什么。这是我用来知道我是否使用正确版本的代码:

  

提出“nokogiri:#{Nokogiri :: LIBXML_VERSION} /#{Nokogiri :: LIBXML_PARSER_VERSION}”

它使用nokogiri内部使用的相同常量来检查版本是否匹配。