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

相关文章
相关标签/搜索