Jad是一個Java的一個反編譯工具,是用命令行執行,和通常JDK自帶的java,javac命令是一樣的。不過因爲是控制檯運行,所以用起來不太方便。不過幸好有一個eclipse的插件JadClipse,二者結合可以方便的在eclipse中查看class文件的源代碼。下面介紹一下配置:
A.下載JadClipse,http://jadclipse.sourceforge.net/wiki/index.php/Main_Page#Download,注意選擇與eclipse版本一致的版本,我用的是Eclipse3.4,所以選擇下載版本net.sf.jadclipse_3.3.0.jar
B.下載Jad,http://www.varaneckas.com/jad,下載相應版本
C.將下載下來的Jadclipse,如net.sf.jadclipse_3.3.0.jar拷貝到Eclipse下的plugins目錄即可。當然也可以用links安裝,不過比較麻煩。
D.將Jad.exe拷貝到JDK安裝目錄下的bin文件下(方便,與java,javac等常用命令放在一起,可以直接在控制檯使用jad命令),我的機器上的目錄是D:\Program
Files\Java\jdk1.6.0_02\bin\jad.exe
F.然後,重新啓動Eclipse,找到Eclipse->Window->Preferences->Java,此時你會發現會比原來多了一個JadClipse的選項,單擊,會出現,如下:,在Path
to decompiler中輸入你剛纔放置jad.exe的位置,也可以制定臨時文件的目錄,如圖所示。。當然在JadClipse下還有一些子選項,如Debug,Directives等,按照默認配置即可。
G.基本配置完畢後,我們可以查看一下class文件的默認打開方式,Eclipse->Window->Preferences->General->Editors->File
Associations,我們可以看到下圖:
,我們可以看到class文件的打開方式有兩個,JadClipse和Eclipse自帶的Class File
Viewer,而JadClipse是默認的。
H.全部配置完成,下面我們可以查看源碼了,選擇需要查看的類,按F3即可查看源碼,如查看Annotation中的Target,使用jad查看源碼如下:
大家可以看到最上面的一行
"/*jadclipse*/// Decompiled by Jad v1.5.8g.
Copyright 2001 Pavel Kouznetsov.",說明是由jad反編譯的。
PS:網上說對於存在源代碼的類,它不會強行反編譯,也就是說它還是會用eclipse自帶的Class
File Viewer查看class文件。這個我還沒有進行過驗證。 另外附上我用的jad和jadclipse的壓縮包,方便大家下載:/Files/landon/DeComiler.rar
Eclipse的反編譯插件一直在用jad,感覺很不錯。
剛下了個新版的eclipse,配置jad的時候發現要多設置個東西。
從頭開始
環境介紹:
eclipse version:Kepler Release(其實是3.9)
jadClipse version:3.3(好久好久以前的版本了,估計是也沒有什麼好更新了)
1.下載jadClipse
http://sourceforge.net/projects/jadclipse/
2.將net.sf.jadclipse_3.3.0.jar 拷貝到eclipse的plugins目錄下
3.設置jad的可執行文件路徑和生成的臨時文件路徑
4.如果你發現進入class並沒有被反編譯,那麼修改文件關聯
注意,這裏有兩個.class的關聯,可以直接修改第二個就是沒有源代碼的情況,Associated editors下添加一個編輯器,並且設置爲默認的,如下圖。
5.我之前下的一些eclipse並沒有.class without source項,這時候就在.class 下添加jad的編輯器並且設置爲默認。
6.如果你沒有下載到jad.exe 或者jad.jar,附件中的壓縮文件有這些東西。