连Java8也不放过的超牛Java字节码反编译工具:Procyon-Decompiler

笔者以前经常使用JD-GUI工具反编译Java class,但是该工具反编译1.7之后的字节码就开始不完美了,尤其是反编译1.8的字节码根本没法看。今天推荐Procyon-Decompiler反编译工具,我们知道,在代码支撑方面,JDK 1.7引入了字符串Switch、泛型接口改进等新功能,1.8增加了lambda表达式、方法传递、多重注解等新特性,这使得反编译工具的编写难度加大,Procyon-Decompiler支持JDK1.8类的反编译,在很多方面做得非常不错:

  • 字符串的Switch
  • 枚举声明方面
  • 注解方面
  • 匿名类、内部类
  • Java8新接口规范
  • Java8 Lambda表达式
  • Java8 方法传递

另外它在反编译后输出多种类型的结果,如Java源码、原始字节码、字节码AST

使用示例:
反编译java.lang.String类:

反编译java.util.Collections类:

反编译一个jar包,并将源代码输出到一个目录:

 

工具下载:

下载procyon-decompiler反编译工具procyon-decompiler-0.5.30.jar

 

工具官网:
https://bitbucket.org/mstrobel/procyon/wiki/Java%20Decompiler

官网推荐了很多可视化工具

(文/howsun

来源:http://www.lizi.pw/archives/59


如果给你带来帮助,欢迎微信或支付宝扫一扫,赞一下。