Eclipse Class Decompiler——Java反編譯插件

Eclipse Class Decompiler是一款Eclipse插件,整合了多種反編譯器,和Eclipse Class Viewer無縫集成,可以很方便的使用插件查看類庫源碼,進行Debug調試。

Eclipse Class Decompiler對JDK的最低要求爲JDK1.5, 能反編譯和debug各版本的Class文件,支持JDK8的Lambda語法,同時支持中文等非Ascii碼字符集的解析,支持Eclipse 3.5及以上全部版本的Eclipse。

目前本插件下載量已超過16萬,日均下載量超過500次,在Eclipse 官方市場 MarketPlace 中排名前10。

爲保證反編譯插件能支持最新版的Eclipse,本插件再也不提供離線下載方式安裝,請你們經過Eclipse Marketplace進行安裝,在線安裝源放置在 github.org 上,不會像sourceforge同樣被牆。

插件在 Eclipse Marketplace 上的項目地址:https://marketplace.eclipse.org/content/eclipse-class-decompiler 

喜歡本插件的同窗能夠幫忙點個贊:https://marketplace.eclipse.org/user/login/sso?destination=node/472922/toggle_favorites

安裝插件請 拖拽 Install按鈕 到Eclipse工具欄或者其餘窗口區域(編輯器區域除外) Drag to your running Eclipse workspace to install Eclipse Class Decompiler


或採用Eclipse Marketplace 搜索 Decompiler 或者 反編譯 進行更新





本插件支持Windows,Linux,Macosx 32位及64位操做系統。

低版本 Eclipse 不包含 Eclipse MarketPlace Client,能夠經過如下地址在線更新:

http://cnfree.github.io/Eclipse-Class-Decompiler/update
 
插件使用說明:

下圖爲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文件。



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






html

類反編譯查看器右鍵菜單包含了Eclipse自帶類查看器右鍵菜單的所有選項,並增長了一個「導出反編譯源代碼」菜單項。




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




同時插件也支持直接將外部的Class文件拖拽到Eclipse編輯器中進行反編譯。


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




java

Debug調試:能夠在首選項選中對齊行號進行單步跟蹤調試,和普通的包含源代碼時的調試操做徹底一致,一樣的也能夠設置斷點進行跟蹤。當透視圖爲Debug時,插件自動生成行號並進行對齊方便調試代碼,無需進行任何設置。

原創做者:http://www.blogjava.net/cnfree/archive/2012/10/30/390457.htmlnode

相關文章
相關標籤/搜索