到目前为止,我对Ruby来说是全新的。我安装了IronRuby,因为我是一名.NET开发人员,它的Windows 7似乎占用空间更小。
事情进展顺利,直到我需要安装Gem来解析HTML。我发出以下命令:
igem install rokogiri
并收到以下错误:
ERROR: While executing gem ... (NoMethodError)
undefined method `set_params' for #<OpenSSL::SSL::SSLContext:0x00001ba>
运行igem env会产生:
RubyGems Environment:
- RUBYGEMS VERSION: 1.3.7
- RUBY VERSION: 1.9.2 (2010-08-18 patchlevel 0) [i386-mswin32]
- INSTALLATION DIRECTORY: C:/Program Files (x86)/IronRuby 1.1/Lib/ruby/gems/1.9.1
- RUBY EXECUTABLE: "C:/Program Files (x86)/IronRuby 1.1/bin/ir.exe"
- EXECUTABLE DIRECTORY: C:/Program Files (x86)/IronRuby 1.1/bin
- RUBYGEMS PLATFORMS:
- ruby
- universal-dotnet-4.0
- GEM PATHS:
- C:/Program Files (x86)/IronRuby 1.1/Lib/ruby/gems/1.9.1
- P:/.gem/ironruby/1.9.1
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- http://rubygems.org/
我在Google上的搜索毫无结果。有没有人有任何建议?
谢谢!
答案 0 :(得分:0)
使用OpenSSL库时发生错误 所以这个问题可以解决使用ruby标准的OpenSSL库,而不是IronRuby的库 我认为您可以按照以下步骤安装库。
验证SSL验证功能一次 将下一行添加到〜/ .gemrc(%HOME%\。gemrc)文件中 (如果它没有退出,创建)
:ssl_verify_mode: 0
在此,“igem”可用。 但不推荐这种状态。
安装OpenSSL库,如下所示:
> igem install rubysl-openssl
并且,恢复〜/ .gemrc文件 'igem'仍有待使用。
答案 1 :(得分:0)
对于遇到此问题的任何人来说,一个对我有用的解决方案是使用标准的Ruby gem命令并将安装目录设置为IronRuby gem位置。
gem install --install-dir "c:/Program Files (x86)/IronRuby 1.1/lib/ironruby/gems/1.8" -V json_pure
igem看起来确实是一个非常基本的Ruby脚本,它包含了Ruby gem命令。 OpenSSL错误似乎是一个红色的鲱鱼,可能是因为默认的gem存储库URL现在重定向到另一个位置,而igem脚本没有处理它。