一、安装
1.help -- Eclipse Marketplace...
2.输入 Decompiler 搜索并安装此插件
3.勾选上所有的反编译插件
4.接受条件
5.点击ok继续安装
6.yes 重启eclipse
7.window -- Preferences 进入设置页面
8.对反编译器( Decompiler )进行配置
二、配置说明
1.缺省类反编译器(Default Class Decompiler):
- CFR(支持JDK8):http://www.benf.org/other/cfr/ 用java 6编写,反编译现在的java7 java8等特性
- FernFlower(支持JDK8):https://github.com/fesh0r/fernflower IDEA默认Java反编译器,也是Android Studio的默认Java反编译器
- Jad:官网http://www.kpdus.com无法访问,已经不再更新 不支持java 5及以后版本 想下载的朋友可以访问 https://varaneckas.com/jad/ 下载反编译镜像
- Procyon(支持JDK8):https://bitbucket.org/mstrobel/procyon/overview 擅长:
- 枚举声明
- 枚举和字符串switch语句(到目前为止仅针对javac 1.7进行了测试)
- 本地类(匿名和命名)
- 注释
- Java 8 Lambdas和方法引用(即::运算符)
- JD-Core:http://jd.benow.ca/ 是一个从一个或多个“.class”文件中重构Java源代码的库。JD-Core可用于恢复丢失的源代码并探索Java运行时库的来源。支持Java 5的新功能,如注释,泛型或枚举等
2.缺省类反编译器(Decompiler Settings):
- 重用缓存代码:只会反编译一次,以后每次打开该类文件,都显示的是缓存的反编译代码。
- 忽略已存在的源代码:若未选中,则查看Class文件是否已绑定了Java源代码,如果已绑定,则显示Java源代码,如果未绑定,则反编译Class文件。若选中此项,则忽略已绑定的Java源代码,显示反编译结果。
-
显示反编译器报告:显示反编译器反编译后生成的数据报告及异常信息。
- 使用Eclipse代码格式化工具:使用Eclipse格式化工具对反编译结果重新格式化排版,反编译整个Jar包时,此操作会消耗一些时间。
- 使用Eclipse成员排序:使用Eclipse成员排序对反编译结果重新格式化排版,反编译整个Jar包时,此操作会消耗大量时间。
- 以注释方式输出原始行号信息:如果Class文件包含原始行号信息,则会将行号信息以注释的方式打印到反编译结果中。
- 根据行号对齐源代码以便于调试:若选中该项,插件会采用AST工具分析反编译结果,并根据行号信息调整代码顺序,以便于Debug过程中的单步跟踪调试。
- 设置类反编译查看器作为缺省的类文件编辑器:默认为选中,将忽略Eclipse自带的Class Viewer,每次Eclipse启动后,默认使用本插件提供的类查看器打开Class文件。
三、查看及导出源码
- 方法一:右键点中 类 || 接口 || 方法 名,选择Open Declaration,即可进入源码。
- 方法二:右键点中 类 || 接口 || 方法 名,直接按F3键,即可进入源码。
- 方法三:常按住Ctrl键,然后点击 类 || 接口 || 方法 名,即可进入源码。(我比较喜欢这种操作方式)
进入源码后,在工具栏中会出现反编译器 点击可修改编译器类型 还可导出反编译代码