转载

016-JDK8+可用的反编译工具(JD_GUI+Procyon)

这是坚持技术写作计划(含翻译)的第16篇,定个小目标999,每周最少2篇。

本文是源于一次逆向android app,辛苦脱壳后得到 classes_dumped_29-dex2jar.jar ,要得到源码,但是又不想降级jdk到1.7来迁就jd_gui。花了一分钟,找到jd_gui 在1.8下的用法,至于 基于procyon的UI luyten 纯是凑数。

JD_GUI

打开 http://java-decompiler.github.io/

016-JDK8+可用的反编译工具(JD_GUI+Procyon)

其实官网已经很明显了,大家之所以以讹传讹,认为JD_GUI不支持1.8,大多是被度娘或者CSDN荼毒。

1.4.0 及以前的jd_gui,在1.8打开一般是

016-JDK8+可用的反编译工具(JD_GUI+Procyon)

下载并解压预览版,然后 java -jar jd-gui-1.4.1.jar

016-JDK8+可用的反编译工具(JD_GUI+Procyon)

熟悉的界面,熟悉的配方。

官方截图

016-JDK8+可用的反编译工具(JD_GUI+Procyon) 016-JDK8+可用的反编译工具(JD_GUI+Procyon) 016-JDK8+可用的反编译工具(JD_GUI+Procyon) 016-JDK8+可用的反编译工具(JD_GUI+Procyon)

procyon + luyten

下载最新版的 luyten.jar ,然后 java -jar luyten-0.5.4.jar

016-JDK8+可用的反编译工具(JD_GUI+Procyon)

只是轻度使用的话,两个差不多,建议用jd_gui,起码搜索速度能甩luyten 10条街啊。

结语

是不是以为会有类似lambda反编译比对一类的评测文?答案是,你想多了。这些工具只要有数就行,一个不好用,换另一个就行。

其实,一般情况下,使用独立反编译工具的可能性很小,一般是IDE的插件居多,比如, cnfree/Eclipse-Class-Decompiler ,而idea默认有简易版的反编译插件。足以应付日常工作中零星的反编译用途。

原文  https://anjia0532.github.io/2019/04/18/java-decompiler/
正文到此结束
Loading...