2013-09-30 22 views
0

我正試圖在一個Java項目中嵌入JRuby。我正在使用jruby-complete-1.7.4.jarScriptingContainer爲什麼我得到錯誤 - 加載錯誤:openssl - java.lang.NoClassDefFoundError:無法初始化類org.jruby.ext.openssl.ASN1?

由於某種原因,以下腳本會引發錯誤。

ScriptingContainer container = new ScriptingContainer(); 
container.runScriptlet("require 'net/https'"); 

這失敗例外

load error: openssl -- java.lang.NoClassDefFoundError: Could not initialize class org.jruby.ext.openssl.ASN1. 

這只是發生在幾臺電腦。我沒有安裝jruby-openssl和充氣城堡寶石。我的課程路徑只包含jruby-complete-1.7.4.jar。我想知道爲什麼會發生這種錯誤,應該怎樣解決這個問題?這怎麼能在 一臺電腦上工作,並在另一臺電腦上失敗?調試問題的任何幫助都會很好。

JRuby的版本 - 1.7.4
系統 - 的Mac OS X 10.8.4

回答

0

你不需要JRuby的OpenSSL的分開..它應該使用JRuby JAR捆綁..確保你沒有任何安裝了舊的jruby-openssl或bouncycastle。

+0

這是出現在每個地方的常見答案。獨立的'jruby'可能適用於嵌入式版本。我使用的'ScriptingContainer'從jar文件中獲取gem,並在'setLoadPaths()'中指定。我不認爲這與系統級安裝的寶石有關。或者我錯過了什麼? –

相關問題