2010-07-16 1 views
5

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

  • 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 gem. Согласно this link, этого не должно быть?

Попытка загрузить драгоценный камень неясно require 'rubygems' и gem 'jruby-openssl' не поможет.

+0

Аналогичная установка для меня тоже. (X) ubuntu 10.04 (x64), jruby 1.4.0, jruby-openssl 0.7 –

ответ

3

Вы уверены, что ищете подходящую константу?

$ 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 
+0

Ну, теперь это интересно. Но в моем случае ошибка исходит от драгоценного камня, поэтому я собираюсь предположить, что в какой-то момент, по крайней мере, это была правильная константа. –

+0

@Matthew Мы получаем эту ошибку от того же самого драгоценного камня (Redcar). Была ошибка, которая вызвала эту ошибку для меня. Как только эта ошибка была исправлена, я удалил папку .redcar и переустановил ее, и все было в порядке, так что, возможно, вы должны это сделать. – dbyrne

+0

@dbyrne: Да, это исправлено и для меня. Тем не менее, все еще любопытно, как исправить себя. Мог бы посмотреть, могу ли я заставить Дэна опубликовать здесь об этом. –