Java反編譯


 

工具下載:https://varaneckas.com/jad/

以下假設jad.exe在c:\java目錄下

一、基本用法
  Usage:jad [option(s)]
  直接輸入類文件名,且支持通配符,如下所示。
  c:\java\>jad example1.class
  c:\java\>jad *.class
  結果是將example1.class反編譯為example1.jad。將example1.jad改為example1.java即得源文件。

二、Option -o
  不提示,覆蓋源文件

三、Option -s
  c:\java\>jad -sjava example1.class
  反編譯結果以.java為擴展名。

四、Option -p
  將反編譯結果輸出到屏幕
  c:\java\>jad -p example1.class
  將反編譯結果重定向到文件
  c:\java\>jad -p example1.class>example1.java

五、Option -d
  指定反編譯的輸出文件目錄
  c:\java\>jad -o -dtest -sjava *.class

 jad命令的參數含義如下:
       -o:覆蓋舊文件,而且不用提示確認。
       -r:重新加載生成包結構。
       -s (java):定義輸出文件的擴展名。jad為默認擴展名,我們反編譯后當然是要.java源文件了。
       -d:輸出文件的目錄。src表示反編譯后的所有文件都放在src目錄下。
       classes/**/*.class:classes是需要反編譯的文件夾的名字,整個表示classes目錄下的所有class文件。你也可以寫成這樣**/*.class,這表示當前目錄及其子目錄下所有的class文件(包含所有的子目錄)。

例如:

D:\mapreduce>jad -o -r -sjava *.class

 

將文件接下到一個目錄,然后進入所在目錄cmd;

 

 將要編譯的.class文件放到這個目錄:

jad -o -r -sjava *.class

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM