Java反編譯插件:Eclipse Class Decompiler

閒暇之餘,寫了一個Eclipse下的Java反編譯插件:Eclipse Class Decompiler,整合了目前最好的2個Java反編譯工具Jad和JD-Core,並且和Eclipse Class Viewer無縫集成,能夠很方便的使用本插件查看類庫源碼,以及採用本插件進行Debug調試。

Eclipse Class Decompiler插件更新站點: http://feeling.sourceforge.net/update

離線安裝包下載地址一:http://feeling.sourceforge.net/downloads/org.sf.feeling.decompiler_1.0.2.zip

離線安裝包下載地址二:http://www.blogjava.net/Files/cnfree/org.sf.feeling.decompiler_1.0.2.zip

本插件僅支持Windows,Linux,Macosx操作系統。

直接使用Eclipse進行更新,支持Eclipse 3.x, 4.x,不依賴任何其他插件,直接勾選更新插件即可。

下圖爲Eclipse Class Decompiler的首選項頁面,可以選擇缺省的反編譯器工具,並進行反編譯器的基本設置。缺省的反編譯工具爲JD-Core,JD-Core更爲先進一些,支持泛型、Enum、註解等JDK1.5以後纔有的新語法。

首選項配置選項:

1.重用緩存代碼:只會反編譯一次,以後每次打開該類文件,都顯示的是緩存的反編譯代碼。

2.忽略已存在的源代碼:若未選中,則查看Class文件是否已綁定了Java源代碼,如果已綁定,則顯示Java源代碼,如果未綁定,則反編譯Class文件。若選中此項,則忽略已綁定的Java源代碼,顯示反編譯結果。

3.顯示反編譯器報告:顯示反編譯器反編譯後生成的數據報告及異常信息。

4.使用Eclipse代碼格式化工具:使用Eclipse格式化工具對反編譯結果重新格式化排版,反編譯整個Jar包時,此操作會消耗一些時間。

5.使用Eclipse成員排序:使用Eclipse成員排序對反編譯結果重新格式化排版,反編譯整個Jar包時,此操作會消耗大量時間。

6.以註釋方式輸出原始行號信息:如果Class文件包含原始行號信息,則會將行號信息以註釋的方式打印到反編譯結果中。

7.根據行號對齊源代碼以便於調試:若選中該項,插件會採用AST工具分析反編譯結果,並根據行號信息調整代碼順序,以便於Debug過程中的單步跟蹤調試。

8.設置類反編譯查看器作爲缺省的類文件編輯器:默認爲選中,將忽略Eclipse自帶的Class Viewer,每次Eclipse啓動後,默認使用本插件提供的類查看器打開Class文件。

插件提供了系統菜單,工具欄,當打開了插件提供的類反編譯查看器後,會激活菜單和工具欄選項,可以方便的進行首選項配置,切換反編譯工具重新反編譯,以及導出反編譯結果。


 

類反編譯查看器右鍵菜單包含了Eclipse自帶類查看器右鍵菜單的全部選項,並增加了一個“導出反編譯源代碼”菜單項。

打開項目路徑下的Class文件,如果設置類反編譯查看器爲缺省的查看器,直接雙擊Class文件即可,如果沒有設置爲缺省查看器,可以使用右鍵菜單進行查看。

Eclipse Class Decompiler插件也提供了反編譯整個Jar文件或者Java包的反編譯。該操作支持Package Explorer對包顯示佈局的操作,如果是平鋪模式佈局,則導出的源代碼不包含子包,如果是層級模式佈局,則導出選中的包及其所有的子包。

Debug調試:可以在首選項選中對齊行號進行單步跟蹤調試,和普通的包含源代碼時的調試操作完全一致,同樣的也可以設置斷點進行跟蹤。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章