2010-02-02 118 views
6

我有一個jar文件,它在html文件中用作applet。我想修改jar文件的內容並重新構建jar文件,以便html可以正確處理新的jar文件。我怎樣才能做到這一點??修改jar文件

我已經嘗試使用7zip nad進行解壓縮,修改了源並創建了新的jar。但是當我在html中使用它時,它顯示了一些java.lang.Classnotfound錯誤

+0

你是什麼意思的「修改內容」?你在談論代碼或關於jar中的資源(圖片等)嗎? – 2010-02-02 15:58:13

+0

如果您對@mmyers評論的回答爲是,則Winrar FTW ............... – 2010-02-02 15:59:57

回答

0

JAR文件,只是zip文件,使用你喜歡的編輯遠離任何工具!

1

免責聲明:在對任何代碼進行逆向工程時,請確保您處於法律允許的範圍內並遵守該代碼的許可。

按照上面的說明解壓縮JAR。

找到JAR的原始源代碼(可能位於SourceForge上),並下載源代碼,修改源代碼並重建自己的JAR。

您也可以反編譯JAR中的類文件。這是一個相當先進的過程,有很多「陷阱」。

2

在代碼(.java文件)中進行更改,重新編譯以獲取.class文件。然後,簡單地用舊的jar替換舊的.class文件。我通常使用WinZip,但你可以使用任何可以處理.Zip文件的應用程序。它應該只是工作。

我遇到了應用程序的啓動器使用某種驗證並檢查這種更改的情況。我不得不使用新的啓動腳本。這似乎不是你的情況,但。

1

這肯定可以從命令行執行。使用u選項jar

從Java教程:

jar uf jar-file input-file(s) 

「的所有文件已經在具有相同的路徑名添加將被覆蓋文件歸檔。」

Updating a JAR File

一個簡短的測試表明這種迅速從試圖刪除文件除了更新的變化。

我還沒有在其他關於修改jar文件的線程上看到這個答案,許多標記爲重複的東西都表明沒有其他選擇,只能徹底重製jar。如果錯誤,請糾正。