这是坚持技术写作计划(含翻译)的第16篇,定个小目标999,每周最少2篇。
本文是源于一次逆向android app,辛苦脱壳后得到 classes_dumped_29-dex2jar.jar
,要得到源码,但是又不想降级jdk到1.7来迁就jd_gui。花了一分钟,找到jd_gui 在1.8下的用法,至于 基于procyon的UI luyten 纯是凑数。
打开 http://java-decompiler.github.io/
其实官网已经很明显了,大家之所以以讹传讹,认为JD_GUI不支持1.8,大多是被度娘或者CSDN荼毒。
1.4.0 及以前的jd_gui,在1.8打开一般是
下载并解压预览版,然后 java -jar jd-gui-1.4.1.jar
熟悉的界面,熟悉的配方。
下载最新版的 luyten.jar ,然后 java -jar luyten-0.5.4.jar
只是轻度使用的话,两个差不多,建议用jd_gui,起码搜索速度能甩luyten 10条街啊。
是不是以为会有类似lambda反编译比对一类的评测文?答案是,你想多了。这些工具只要有数就行,一个不好用,换另一个就行。
其实,一般情况下,使用独立反编译工具的可能性很小,一般是IDE的插件居多,比如, cnfree/Eclipse-Class-Decompiler ,而idea默认有简易版的反编译插件。足以应付日常工作中零星的反编译用途。