首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >让Rails使用Hpricot

让Rails使用Hpricot
EN

Stack Overflow用户
提问于 2009-07-12 17:54:49
回答 3查看 2.2K关注 0票数 0

我正在尝试让Hpricot在我的开发机器上与Rails一起工作。

我已经使用标准的'gem install hpricot‘安装了Hpricot 0.8.1,并确认它在我的标准Ruby安装1.8.7上工作得很好;但是当我在我的Rails 2.1.0安装中尝试同样的安装时,我得到了一个错误-

TypeError:来自/usr/lib/ruby/1.8/hpricot/tag.rb的类BogusETag的超类不匹配:130

似乎有一些冲突,但谷歌错误并没有找到任何有用的信息。

有什么想法吗?提前谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-07-25 12:14:41

如果您可以自由选择您的HTML解析库,那么可以切换它。为什么,Hpricot的创建者最近发布了一篇文章,说现在你应该用Nokogiri而不是HPricot。

票数 1
EN

Stack Overflow用户

发布于 2009-11-04 19:29:06

出现此错误的原因是没有适用于该平台的编译库。要为您当前的hpricot版本解决此问题,请转到rails目录dir并执行以下操作(假设您使用的是未打包的gem -否则不会出现此问题,除非您的操作系统在安装gem后进行了升级):

代码语言:javascript
复制
cd vendor/gems/hpricot-0.6/ext/hpricot_scan/
ruby extconf.rb
make

然后将编译后的库复制到您系统的正确平台目录中。OS X的每个版本都有一个略有不同的平台名称,因此我的(Snow Leopard)显示为:

代码语言:javascript
复制
ruby-1.8.6-p383 > RUBY_PLATFORM
 => "i686-darwin10.0.0"

这意味着我需要将文件"hpricot_scan.bundle“(OS X为共享库使用捆绑包,在Linux上为"hpricot_scan.so")复制到以下目录,并在必要时创建它:

代码语言:javascript
复制
vendor/gems/hpricot-0.6/lib/i686-darwin10.0.0/

为您的计算机替换适当的平台名称(将RUBY_PLATFORM从irb放入)。

票数 1
EN

Stack Overflow用户

发布于 2010-09-23 02:54:40

执行以下命令及其工作

gem install hpricot --platform=mswin32

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1116530

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档