2012-04-05 53 views
1

所有的, 所以我一直面對這種行爲很長一段時間,我相信其他人也面臨它並知道解決方案。我使用eclipse將應用程序jar導出爲可運行的jar,顯然這個應用程序有很多其他的jar,所以我使用選項在主jar中輸出其他jar。問題是,當我開始我的應用程序,它不是從db2jcc.jar和其他幾個jar加載文件,但如果我部署db2jcc.jar作爲單獨的jar應用程序運行良好。 enter image description here當在Java中的jar中加載jar時的奇怪行爲Web Start

enter image description here

enter image description here

我只想讓我的JNLP文件和jar過程儘可能簡單的簽約,這就是爲什麼我包括主罐子罐子。非常感謝您的建議。我正在使用Rational Software Architect 8.0(基於eclipse)進行導出

+0

可能相關:http://stackoverflow.com/questions/183292/classpath-including-jar-within-a-jar – user506069 2012-04-05 02:02:21

回答

3

我認爲在您的主jar文件中包含依賴關係(其他jar文件)並不是一個好主意。也許有辦法做到這一點,但有一個很好的理由不這樣做:緩存

Java Web Start在客戶端計算機上緩存jar文件。因此,通過將它們與應用程序jar分離開來,每次更新應用程序時,Java Web Start都不必再將它們全部下載下來。您的屏幕截圖顯示您擁有超過12MB的依賴關係,因此每次都需要下載大量的內容。

如果您擔心讓簽名過程變得儘可能簡單,那麼只需編寫一個腳本來爲您完成。實際上,我在屏幕截圖中注意到嚮導將爲您創建一個Ant腳本。我建議你爲它創建Ant腳本,然後運行該腳本 - 它應該比每次通過嚮導更簡單,更快!

+0

感謝Gutch,老實說,我不知道那些東西(我剛纔讀了一遍,回覆這篇文章),我會保持我的jar文件與主jar分開。 – Mike 2012-04-05 02:58:53

相關問題