前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。
前言:在实际的开发中几乎都会使用到一些框架来辅助项目的开发工作,对于一些框架的代码我们总怀有一些好奇之心,想一探究竟,有源码当然更好了
1:Eclipse的版本信息
2:Help——Eclipse Marketplace
3-1:输入 Decompiler 搜索并安装此插件
3-2:输入 反编译 搜索并安装此插件(有好多好玩的插件,不妨尝试玩一玩)
4:这里有几种不同的反编译插件工具的选择,可以先都选上,然后尝试一下,看看那个更好玩
5:没得选,不接受,就不能继续玩了
6:当然要继续了
7:好啦!反编译插件安装完成了,重启Eclipse之后就能玩了,那就Yes吧!
8:想看一下反编译插件安装后的设置选项 Window——Preferences
9:下图为Eclipse Class Decompiler的首选项页面,可以选择缺省的反编译器工具,并进行反编译器的基本设置。
缺省的反编译工具为JD-Core,JD-Core更为先进一些,支持泛型、Enum、注解等JDK1.5以后才有的新语法。
首选项配置选项的含义如下所示:
9-1.重用缓存代码:只会反编译一次,以后每次打开该类文件,都显示的是缓存的反编译代码。
9-2.忽略已存在的源代码:若未选中,则查看Class文件是否已绑定了Java源代码,如果已绑定,则显示Java源代码,如果未绑定,则反编译Class文件。若选中此项,则忽略已绑定的Java源代码,显示反编译结果。
9-3.显示反编译器报告:显示反编译器反编译后生成的数据报告及异常信息。
9-4.使用Eclipse代码格式化工具:使用Eclipse格式化工具对反编译结果重新格式化排版,反编译整个Jar包时,此操作会消耗一些时间。
9-5.使用Eclipse成员排序:使用Eclipse成员排序对反编译结果重新格式化排版,反编译整个Jar包时,此操作会消耗大量时间。
9-6.以注释方式输出原始行号信息:如果Class文件包含原始行号信息,则会将行号信息以注释的方式打印到反编译结果中。
9-7.根据行号对齐源代码以便于调试:若选中该项,插件会采用AST工具分析反编译结果,并根据行号信息调整代码顺序,以便于Debug过程中的单步跟踪调试。
9-8.设置类反编译查看器作为缺省的类文件编辑器:默认为选中,将忽略Eclipse自带的Class Viewer,每次Eclipse启动后,默认使用本插件提供的类查看器打开Class文件。
10:查看所引用的 类 || 接口 || 方法 的反编译代码的方法如下
方法一:右键点中 类 || 接口 || 方法 名,选择Open Declaration,即可进入源码。
方法二:右键点中 类 || 接口 || 方法 名,直接按F3键,即可进入源码。
方法三:常按住Ctrl键,然后点击 类 || 接口 || 方法 名,即可进入源码。(我比较喜欢这种操作方式)
11:插件提供了系统菜单,工具栏,当打开了插件提供的类反编译查看器后,会激活菜单和工具栏选项,可以方便的进行首选项配置,切换反编译工具重新反编译,以及导出反编译结果。