Ruby gem使用jRuby 1.6.0进行机械化(Ruby 1.9.2)

时间:2011-04-19 22:11:47

标签: ruby jruby mechanize

当我尝试使用Mechanize访问使用SSL的网站时,出现以下错误。

jruby-1.6.0 :009 > page = mechanize_agent.submit(form) 
NoMethodError: undefined method `read_nonblock' for #<OpenSSL::SSL::SSLSocket:0x44cae5b8>

我尝试使用Mechanize 2.0.pre.2和1.0.0。

安装的jRuby是: jruby 1.6.0(ruby 1.9.2 patchlevel 136)(2011-03-15 f3b6154)(Java HotSpot(TM)64位服务器VM 1.6.0_24)

我还安装了gem jruby-openssl。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:3)

这是一个错误,你可以使用一个猴子补丁来绕过它。 http://jira.codehaus.org/browse/JRUBY-5529

链接到底部的猴子补丁。