在IronRuby上安装任何宝石时出错

时间:2011-12-27 20:02:01

标签: ruby ironruby

到目前为止,我对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上的搜索毫无结果。有没有人有任何建议?

谢谢!

2 个答案:

答案 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脚本没有处理它。