JRuby OpenSSL Ошибка - PullRequest
       16

JRuby OpenSSL Ошибка

5 голосов
/ 16 июля 2010

У меня проблемы с настройкой JRuby для правильной работы с OpenSSL.Поиск в Google показал, что это довольно распространенный случай, но ни одно из решений, которые я прочитал, не сработало для меня.Вот мои настройки:

  • Ubuntu 9.10
  • jruby 1.5.1
  • jruby-openssl (0.7)

Вотошибка:

irb(main):001:0> require 'jruby/openssl/gem_only'
=> true
irb(main):002:0> require 'openssl'
=> true
irb(main):003:0> OpenSSL::Digest::OPENSSL_VERSION_NUMBER
NameError: uninitialized constant OpenSSL::Digest::OPENSSL_VERSION_NUMBER

Интересно, что require 'openssl' возвращает true, даже если у меня не установлен гем jruby-openssl.Согласно этой ссылке , это не должно произойти?

Попытка явно загрузить камень с помощью require 'rubygems' и gem 'jruby-openssl' не помогает.

1 Ответ

3 голосов
/ 25 июля 2010

Вы уверены, что смотрите на правильную постоянную?

$ ruby -v -r openssl -e 'p OpenSSL::Digest::OPENSSL_VERSION_NUMBER'
ruby 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0]
-e:1: uninitialized constant OpenSSL::Digest::OPENSSL_VERSION_NUMBER (NameError)

$ ruby -v -r openssl -e 'p OpenSSL::OPENSSL_VERSION_NUMBER'
ruby 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0]
9470159

$ jruby -v -r openssl -e 'p OpenSSL::OPENSSL_VERSION_NUMBER'
jruby 1.5.1 (ruby 1.8.7 patchlevel 249) (2010-06-06 f3a3480) (Java HotSpot(TM) 64-Bit Server VM 1.6.0_20) [x86_64-java]
9469999
...