2013-06-25 56 views
2

我已經使用命令提示符創建了包含外部jar文件的jar文件。但創建該jar文件後,我無法訪問主jar文件中的jar文件。我不知道文件夾結構是否已更改或有任何其他問題。如何使用jar文件

命令在命令提示符下使用:

C:\diretory>jar cf mycollection.jar * 

'*' - 對包括文件夾中的所有jar文件。

我只是想在我的項目中製作一個需要的所有外部文件的單個jar文件。它已成功構建,但在給定ClassNotFoundException時使用它。 我現在給你我的問題完整的情況。其實我試圖將所有外部外觀和感覺的jar添加到單個jar文件中,所以我不需要單獨放置每個jar。所以我創建了一個包含所有外部外觀和感覺jar文件的jar文件。現在,像使用import語句一樣使用它時,它顯示我的jar文件中沒有這樣的類。

+0

你嵌入(包括)其他JAR文件到一個單一的Jar文件? – MadProgrammer

+3

後1)實際的錯誤或異常輸出。 2)用於運行罐子的命令。 3)主罐子的清單。 4)類路徑/清單中每個類的'jar -tvf the.jar'。 - 沒有這類信息,我們所能做的只是猜測。 –

+0

JAR只是ZIP文件。更改擴展名並使用7zip等ZIP實用程序打開。 –

回答

2

Java不支持嵌入式Jars。我知道,痛苦。

你可以嘗試使用類似One-Jar它允許你嵌入多個JAR到一個單一的「主」瓶,但我有自定義類加載器的問題,但你可能有更好的運氣...

+0

瘋狂的程序員它只是創建一個可執行的jar文件,但怎麼樣從jar文件本身調用類......我的意思是導入de.javasoft ...等它不允許我調用jar文件內的類。感謝您的答案,但不適用於我 –

+1

您不能然後鏈接生成的Jar用於其他項目。 OneJar被設計爲一個工具,通過它你可以打包一個可釋放的應用程序。那麼你的問題的答案是「不 - 它不能完成」 – MadProgrammer

+0

好吧,我明白謝謝你的幫助:D –

0

正如我」 m使用Maven項目我正在使用Maven的目標程序集:程序集以將所有文件打包成一個(使用依賴關係構建)。

而且NetBeans的報價選項「使用依賴關係生成」可能要檢查出來,以及...