2011-01-29 126 views
25

可能重複:
Modifying a file inside a jar如何編輯.jar文件?

所以我有它一個.class文件的JAR文件。我只需要更改文件中的一些單詞。 我應該使用什麼程序?

我希望這可以用於我的手機。

+3

你是什麼意思,你需要在你的`.class`文件中改變一些「世界」(單詞?)?你明白這樣的文件是二進制的,對嗎? – 2011-01-29 14:56:14

+4

它們只是zip文件,可以使用任何zip程序將其解壓縮,如果無法直接執行,則將其重命名爲`.zip`。但它不會對你有太大的幫助,因爲代碼不在其中,Java是一種編譯語言 - 編輯.class文件並不容易。 – Orbling 2011-01-29 15:04:10

回答

23

這裏就是我所做的:

  • 用WinRAR
  • 提取文件使我改變提取的文件
  • 打開最初的JAR文件用WinRAR
  • 使用Add按鈕將更換我修改的文件

就是這樣。我已經用我的諾基亞測試過,它對我很有用。

+0

要去測試一下,但是你知道一個好的.class編輯器嗎? – user594568 2011-01-29 15:00:43

+0

在Sourceforge嘗試類編輯器 – Vaibhav 2011-01-29 15:04:51

3

這是一個工具,用於打開Java類文件二進制文件,查看其內部結構,如果需要修改其部分並將類文件保存回來。它還生成類似於javap實用程序的可讀報告。易於使用的Java Swing GUI。用戶界面嘗試儘可能多地顯示細節,並嘗試呈現與實際Java類文件結構一樣接近的結構。同時,還強調了在進行修改時易用性和類文件一致性。例如,刪除方法時,如果不再引用關聯的常量池條目,它也將被刪除。內置驗證器在保存文件前檢查更改。這個工具已經被學習Java類文件內部的人所使用。這個工具也被用來做類文件進行快速修改源代碼時不可用。」這是從網站的報價。

http://classeditor.sourceforge.net/

20

一個JAR文件是一個zip壓縮文件。您可以使用7zip(一個非常簡單的工具來打開存檔)提取它,也可以將其擴展名更改爲zip,然後使用任何解壓縮文件。

現在你有了你的類文件。文件,因爲類文件是二進制文件(你不會在這裏找到源代碼,也許有一些字符串,但不是java代碼)編輯你的類文件你可以使用像classeditor這樣的工具。

你有類中所有使用類文件硬編碼的字符串。所以如果你想改變的唯一的東西是一些字符串,你可以不使用classeditor。