jad 反編譯 (instruction + tools)
Posted on 2009-07-26 22:19 Gavin.lee 閱讀(333) 評論(0) 編輯 收藏 所屬分類: 經(jīng)驗(yàn)&常識一:
(1).完了后將TestSplit.jad -->TestSplist.java,直接打開OK
C:\Documents and Settings\Administrator\桌面>jad TestSplit.class
Parsing TestSplit.class... Generating TestSplit.jad
(2).直接轉(zhuǎn)化成.java文件
C:\Documents and Settings\Administrator\桌面>jad -sJava TestSplit.class
Parsing TestSplit.class... Generating TestSplit.Java
(3).將.class文件直接打印到控制臺,查看
C:\Documents and Settings\Administrator\桌面>jad -p TestSplit.class
// Decompiled by Jad v1.5.8g. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.kpdus.com/jad.html
// Decompiler options: packimports(3)
// Source File Name: TestSplit.java
import java.io.PrintStream;
public class TestSplit
{
public TestSplit()
{
}
public static void main(String args[])
{
TestSplit testsplit = new TestSplit();
System.out.println(testsplit.bubbleSort("1,32,23 14 5,16 7"));
}
public static String bubbleSort(String s)
{
String as[] = s.split(",| ");
for(int i = 0; i < as.length; i++)
{
for(int j = 0; j < as.length - 1 - i; j++)
if(Integer.parseInt(as[j]) > Integer.parseInt(as[j + 1]))
{
String s2 = as[j];
as[j] = as[j + 1];
as[j + 1] = s2;
}
}
String s1 = "";
for(int k = 0; k < as.length; k++)
if(s1.equals(""))
s1 = as[k];
else
s1 = (new StringBuilder()).append(s1).append(",").append(as[k]).
toString();
return s1;
}
}
(4).jad -o -r -sjava -d src bin\*.class,將bin里面所有的.class反編譯到src下面
C:\Documents and Settings\Administrator\桌面>jad -o -r -sjava -d c:\ d:\MyWorkSpace\tools\WebRoot\WEB-INF\classes\com\Gavin\io\*.class
Parsing d:\MyWorkSpace\tools\WebRoot\WEB-INF\classes\com\Gavin\io\FileAdd.class.
.. Generating c:\com\Gavin\io\FileAdd.java
Parsing d:\MyWorkSpace\tools\WebRoot\WEB-INF\classes\com\Gavin\io\FileOperator.c
lass... Generating c:\com\Gavin\io\FileOperator.java
Parsing d:\MyWorkSpace\tools\WebRoot\WEB-INF\classes\com\Gavin\io\WriteLog.class
... Generating c:\com\Gavin\io\WriteLog.java
注:將產(chǎn)生: c:\com\Gavin\io文件夾。
二:
MyEclipse集成jadClipse,先去網(wǎng)上下
可惜的是沒有找到直接在MyEclipse下安裝的site地址。
Jadclipse--一個自動反編譯.class文件的eclipse小插件,開發(fā)時候很有用
1.首先在壓縮包里拿出jad.exe丟到%JAVAHOME%\bin下面去
2.把壓縮包里的jadclipse_3.3.0.jar丟到eclipse下的plugins目錄下去
3.啟動eclipse,在preferences下可以看到j(luò)adclipse的選項(xiàng)
(切記jad.exe是放在你當(dāng)前eclipse關(guān)聯(lián)的那個jdk目錄的bin下)
4.在File Association中將.class文件的default打開方式為jadclips
好的,試著去隨便找個.class文件,雙擊就能看到源代碼了