2011-05-18 92 views
1

我正在通過將外部Java代碼放入Java代理中來測試外部Java代碼。現在,我試圖將jar文件放在我們服務器的文件系統中的jvm/lib/ext目錄中。目前還沒有在notes.ini中創建條目... 問題是,jar文件存在於2個位置(在代理和服務器的文件系統中)... 這會導致notesExceptions嗎? 我的代理失敗,出現代理錯誤:java.lang.VerifyError: 有沒有人知道問題是什麼?Lotus Notes中的外部罐子

FYI:我們最終會從代​​理除去瓶......這僅僅是測試...

回答

0

java.lang.VerifyError的情況會出現已針對不同的庫比你正在使用的編譯運行。

我懷疑外部罐子的編譯後的字節代碼使用的JRE版本與多米諾骨牌的JRE版本兼容。雖然語法上正確,但jvm多米諾骨牌使用的語義變化卻不能接受。如果您有權訪問源代碼,請檢查它的編譯版本。

0

您的Domino JRE比用於編譯這些JAR文件的JRE/JDK版本舊。這是驗證錯誤的原因。這些JAR文件的字節碼不能通過JRE驗證階段,因爲服務器JRE不能通過瞭解

在大多數情況下是沒有必要的jar文件放置到服務器JVM/lib/ext目錄文件夾中。 將這些jar嵌入到腳本庫/ Java代理中就足夠了。

不過也有例外,例如用於DB2 JDBC驅動程序,即必須位於服務器JVM/lib/ext目錄文件夾,讓Java代理與DB2連接工作。