CFR(Class File Reader) - another java decompiler,经典的
JD-GUI还不支持到Java 8。
版本:cfr_0_78.jar (March 2014)
用法:
引用
java -jar cfr_0_78.jar xxxx.class [方法名] [可选项]
java -jar cfr_0_78.jar xxx.jar [可选项]
测试代码:
public class Lambda {
public static void main(String[] args) {
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6, 7);
list.forEach(n -> System.out.println(n));
}
}
javap -p Lambda
java -jar cfr_0_78.jar Lambda.class
java -jar cfr_0_78.jar Lambda.class --decodelambdas false
- 大小: 2.7 KB
- 大小: 4.6 KB
- 大小: 7 KB
分享到:
相关推荐
在标题中提到的场景下,用户遇到了使用`jd-gui`反编译时的错误,但通过`cfr`成功地完成了反编译,尤其是对于Java 8中的lambda表达式支持。 `jd-gui`是一款常用的Java反编译器,它可以显示Java类文件的源代码视图。...
4. **Procyon**:Procyon是一个强大的Java编译器和反编译器套件,它不仅能反编译Java字节码,还可以处理Java 7和8的新特性,如lambda表达式。其反编译结果的可读性和完整性都非常高。 5. ** Krakatau**:Krakatau是...
Procyon的优势在于它的代码重构能力,能较好地处理Java 8及更高版本的新特性,如lambda表达式和方法引用来生成高质量的源代码。 4. **FernFlower** FernFlower是另一个知名的Java反编译工具,以其简洁的源代码输出...
Procyon特别适合处理Java 8及更高版本的特性,如lambda表达式和方法引介。 4. **FernFlower**:FernFlower是另一个开源的Java反编译器,它能够处理复杂的字节码结构,生成可读性较强的源代码。FernFlower通常用于...
3. **Procyon**:这是一个开源项目,它的反编译能力非常强,尤其是在处理Java 8的特性时,如lambda表达式和方法引用来说。 4. **FernFlower**:这是一个开源的Java反编译器,以其简单性和可配置性而受到欢迎。虽然...
- **反编译质量**:不同工具的反编译效果差异大,高级语言特性(如lambda表达式)的处理可能不尽如人意。 6. **反编译实践** - 在使用反编译工具时,通常需要先通过`javap`(Java自带的字节码反汇编工具)进行...
它还支持Java 8的特性,如lambda表达式和方法引介。 4. **FernFlower** FernFlower是另一个知名的Java反编译器,以其生成的源代码质量高而受到好评。虽然它的用户界面相对简单,但其命令行工具可以方便地集成到...
4. **Procyon**:它是一个强大的Java编译器和反编译器,不仅能反编译Java字节码,还可以处理Java 8的新特性,如lambda表达式。 5. **CFR**:此反编译器旨在生成清晰、可读的源代码,并且支持最新的Java版本。CFR也...
Enhanced Class Decompiler是Eclipse\的插件。它将JD、JAD、Fernflower、CFR和Procyon与Eclipse IDE无缝集成。它在调试过程中显示所有Java源代码,即使您没有所有...它还集成了JavaDoc并支持JDK8 lambda表达式的语法。
在使用过程中,需要注意的是,由于XJad2.2发布时间较早,它可能无法完美处理现代Java的一些特性,比如泛型、注解和Lambda表达式等。因此,对于这些新特性丰富的代码,可能需要寻找更新的反编译工具。此外,反编译...
Enhanced Class Decompiler 的中文直译就是“增强的字节码反编译工具”,下文简称...这还不算完啊,它还集成了 Eclipse 类编辑器 M2E 插件,支持 Javadoc、参考搜索、库源附加、字节码视图和 JDK 8 lambda 表达式的语法