
Recaf
Recaf is an open-source Java bytecode editor for analyzing and changing compiled Java applications, and a tool for Java and Android reverse engineering.
What Recaf is
Recaf is an open-source Java bytecode editor for analyzing and changing compiled Java applications, and a tool for Java and Android reverse engineering. It can display decompiled code for editing as Java and recompiling into a workspace, or let users alter JVM instructions with its assembler. Recaf can attach to running Java processes and redefine classes without restarting the application, though the Attach API cannot remove existing fields or methods or add new ones to existing classes. Search covers classes, members, strings, constants, references, and bytecode patterns. The software includes transformers for common obfuscation patterns, symbol-renaming tools, scripts, and plugins. It accepts class files, JAR, ZIP, WAR, and AAR archives, JMOD files, APK and DEX files, and read-only modules. Recaf runs on Windows, macOS, and Linux, and requires JDK 22 or higher and JavaFX 22 or higher. Its launcher can download compatible JavaFX artifacts and offers both GUI and CLI releases. The software is free.
Good
- Edits decompiled Java or assembled bytecode.
- Can redefine classes in running Java processes.
- Searches classes, members, strings, and bytecode patterns.
- Supports scripts and plugins.
- Runs on Windows, macOS, and Linux.
Watch out
- Requires JDK 22 or higher.
- Requires JavaFX 22 or higher.
- Live patching cannot add or remove class fields or methods.
Who it suits
Recaf suits users analyzing or modifying compiled Java and Android applications, including those working on reverse engineering, malware analysis, Java modding, or live debugging and patching. It requires JDK 22 or higher and JavaFX 22 or higher.
Verdict
Recaf combines decompilation, bytecode editing, search, and live class redefinition for Java and Android analysis. Check its Java requirements and live-patching limits before choosing it.
The facts
Each one read from Recaf's own pages, with the date it was checked.
What it does
- Bytecode editing
- Its assembler supports editing JVM instructions with labels, variable names, and bytecode snippets.checked 2 Oct 2026
- Decompile and recompile
- Users can view decompiled code, edit it as Java, and recompile classes into the workspace without adding dependencies to that workspace.checked 2 Oct 2026
- Deobfuscation
- Recaf includes transformers for common obfuscation patterns and tools for renaming symbols and inspecting specially crafted Java archives.checked 2 Oct 2026
- Editing
- Classes can be edited by recompiling decompiled code or reassembling disassembled code.checked 3 Oct 2026
- File formats
- Supported inputs include class files, JAR/ZIP/WAR/AAR archives, JMOD files, APK/DEX files, and read-only modules.checked 2 Oct 2026
- Input formats
- Recaf supports .class, .jar, .zip, .war, .aar, .jmod, .apk, .dex, and read-only modules, and auto-detects supported content types.checked 3 Oct 2026
- Installation
- The documentation recommends the launcher for most users; it downloads compatible JavaFX artifacts, lets users choose an installed Java version, and provides one-click updates.checked 3 Oct 2026
- JavaFX requirement
- Recaf requires JavaFX 22 or higher, which the launcher can download automatically.checked 3 Oct 2026
- Java requirement
- Recaf requires JDK 22 or higher.checked 3 Oct 2026
- Launcher interface
- Each launcher release offers a GUI and CLI.checked 2 Oct 2026
- Live patching
- Recaf can attach to running Java processes and redefine classes without restarting the target application.checked 2 Oct 2026
- Live patching limits
- The Attach API prevents removing existing fields or methods and inserting new fields or methods into existing classes.checked 2 Oct 2026
- Obfuscation context
- The documentation describes obfuscation as making application logic harder to reverse engineer and points to deobfuscation chapters for Recaf’s capabilities.checked 3 Oct 2026
- Plugins and scripts
- Recaf supports scripts and plugins through modular APIs, allowing users to automate workflows and extend functionality.checked 2 Oct 2026
- Product
- Recaf is an open-source Java bytecode editor for analyzing and editing compiled Java applications.checked 2 Oct 2026
- Purpose
- Recaf is a Java and Android reverse engineering tool for navigating application logic and modifying application behavior.checked 3 Oct 2026
- Runtime requirements
- Recaf requires JDK 22 or higher and JavaFX 22 or higher.checked 2 Oct 2026
- Search
- Search can find classes, members, strings, constants, references, and bytecode patterns.checked 2 Oct 2026
- Use cases
- The site lists reverse engineering, malware analysis, Java modding, and live debugging and patching as common use cases.checked 2 Oct 2026
Alternatives to Recaf
- 1

Blockbench
Free planOpen sourceAndroidiOSWebAPI8.1Free plan - 2

IntelliJ IDEA
Free planAPIExtensionLinuxmacOS7.8Free plan - 3

Visual Studio Code
Free planWebLinuxmacOSWindows7.4Free plan - 4

Fabric
Free planAPILinuxmacOSSelf-hosted6.8Free plan - 5
Minecraft Development MCP Server
Free planAPILinuxmacOSSelf-hosted6.6Free plan - 6
Quilt Loom
Free planLinuxmacOSWindows6.6Free plan
