/Recaf

The modern Java bytecode editor

Primary LanguageJavaMIT LicenseMIT

Recaf Discord Build Status downloads Contributions welcome

screenshot of recaf

An easy to use modern Java bytecode editor that abstracts away the complexities of Java programs. Recaf will automatically handle generation of stack frames and constant pool entries for you.

Download

See the releases page for the latest build.

Preface

If you're just getting started with reverse-engineering in Java, read primer guide. Then check the documentation pages.

Contributing

Are you a developer?

Check out the open issues, project boards, and many scattered TODO messages throughout the source code. There's plenty to do.

Not a developer?

You can help by reporting bugs, making suggestions, providing translations, and sharing this project.

More information can be found in the contribution guide.

Setting up the project

Clone the repository via git clone https://github.com/Col-E/Recaf.git

Open the project in an IDE or generate the build with maven.

IDE:

  1. Import the project from the pom.xml
    • IntelliJ
    • Eclipse - (Warning: Eclipse's custom compiler cannot compile Recaf because of incorrect generics parsing)
  2. Create a run configuration with the main class me.coley.recaf.Recaf

Without IDE:

  1. Execute build
    • Follow the prompt in the script to build the project.
  2. Run the generated build: java -jar target/recaf-{version}-jar-with-dependencies.jar

For additional information, join the Discord server (https://discord.gg/Bya5HaA)