Recaf是一个使用JavaFX开发的现代化反编译工具,它不但具备编译功能,而且还可以直接直接编辑反编译后的类文件、查看字节码、Hex编辑、中文支持等丰富功能。

编辑模式

Recaf默认使用的是反编译模式,可根据需求选择为Hex或者Table模式,如下图:
4. Recaf - 图1

反编译模式

Recaf的默认编辑视图是反编译模式,如果使用的是JDK运行的Recaf,还可以直接编辑反编译后的class文件,如下图:
4. Recaf - 图2

Hex模式编辑

4. Recaf - 图3

Table模式/字节码编辑

4. Recaf - 图4
字节码编辑:
4. Recaf - 图5

Java Agent/Attach模式

Recaf支持Agent模式或者attach模式(注入)。

Agent Attach模式

在菜单栏中点击注入菜单,选择Running process可以看到本机所有运行的Java进程,如下图:
4. Recaf - 图6
attach模式可附加Recaf到一个指定的JVM进程:
4. Recaf - 图7

Agent模式

Agent模式需要在启动Recaf的时候指定-javaagent:参数,如下图,以Agent模式启动Recaf,启动完成后会弹出一个Recaf Instrumentation的窗体:
4. Recaf - 图8

字符串搜索

Recaf支持很多种搜索方式,如下图:
4. Recaf - 图9符串搜索测试:
4. Recaf - 图10
详细文档:https://www.coley.software/Recaf/doc-setup-get.html
Github:https://github.com/Col-E/Recaf
版本下载:https://github.com/Col-E/Recaf/releases