Procyon
Procyon is a free suite of Java metaprogramming tools for code generation and analysis, including reflection, expression trees, runtime code generation, and …
What Procyon is
Procyon is a free suite of Java metaprogramming tools for code generation and analysis, including reflection, expression trees, runtime code generation, and a Java decompiler. Its reflection framework supports generics, wildcards, and other high-level Java types, and includes TypeBuilder, MethodBuilder, and a bytecode emitter. Expression trees can be compiled into callbacks or used with a MethodBuilder. The decompiler supports Java 5 and later features such as enums, switch statements, local classes, annotations, lambdas, and method references. Developers can integrate its decompiler framework into other applications through a public API, or use a standalone front end with dependencies embedded in its JAR. Procyon libraries are available from Maven Central under group ID org.bitbucket.mstrobel. The decompiler wiki says Java 7 is required to run it. The repository marks the compiler toolset and Java decompiler as experimental. Classes built with Eclipse or compilers other than javac may produce less optimal results, particularly with String-based switch statements. The repository displays an Apache-2.0 license.
Good
- Free tools are available from Maven Central.
- Reflection supports generics and wildcards.
- Decompiler handles Java 5 and later features.
- Decompiler can be integrated through a public API.
- Apache-2.0 license is displayed.
Watch out
- Java 7 is required to run the decompiler.
- Compiler toolset and Java decompiler are experimental.
- Non-javac classes may decompile less optimally.
Who it suits
Procyon suits Java developers seeking metaprogramming, runtime code generation, expression trees, or bytecode decompilation tools. It may also suit developers integrating decompiler functionality through a public API.
Verdict
Procyon offers several Java metaprogramming components alongside a decompiler, with both standalone and programmatic use described. Note the experimental status and the stated limits for classes compiled outside javac.
Plans and prices
From Procyon's own pricing page, checked 9 Oct 2026.
| Plan | Price | What it gives you |
|---|---|---|
| Procyon | Free | Java metaprogramming tools · libraries available from Maven Central |
The facts
Each one read from Procyon's own pages, with the date it was checked.
What it does
- Decompiler limitation
- Classes compiled with Eclipse or compilers other than javac may produce less optimal results, especially for String-based switch statements.checked 9 Oct 2026
- Decompiler support
- The decompiler handles Java 5 and later features including enums, switch statements, local classes, annotations, lambdas, and method references.checked 9 Oct 2026
- Distribution
- Procyon libraries are available from Maven Central under group ID org.bitbucket.mstrobel.checked 9 Oct 2026
- Experimental components
- The compiler toolset and Java decompiler are identified as experimental in the repository README.checked 9 Oct 2026
- Expression trees
- The expressions framework supports declarative expression trees that can be compiled into callbacks or coupled with a MethodBuilder.checked 9 Oct 2026
- Interfaces
- The decompiler framework can be integrated into other applications and called programmatically through its public API.checked 9 Oct 2026
- License
- The repository displays an Apache-2.0 license.checked 9 Oct 2026
- Purpose
- Procyon is a suite of Java metaprogramming tools for code generation and analysis, including reflection, expression trees, and a Java decompiler.checked 9 Oct 2026
- Reflection
- The reflection framework supports generics, wildcards, and other high-level Java type concepts.checked 9 Oct 2026
- Related tools
- The repository lists SecureTeam Java Decompiler and Bytecode Viewer as third-party products based on or using Procyon.checked 9 Oct 2026
- Runtime code generation
- The reflection framework includes TypeBuilder, MethodBuilder, and a bytecode emitter.checked 9 Oct 2026
- Runtime requirement
- The Java decompiler wiki says Java 7 is required to run it.checked 9 Oct 2026
- Standalone use
- The decompiler front-end embeds its dependencies in the JAR for easy redistribution.checked 9 Oct 2026
Alternatives to Procyon
- 1

Binary Ninja
Free planWebAPILinuxmacOS7.8$199 one-time - 2
Frida
Free planOpen sourceAndroidiOSAPILinux7.7Free plan - 3

rev.ng
Free planOpen sourceWebAPILinuxmacOS7.7Free plan - 4

JEB
Free planAPILinuxmacOSSelf-hosted7.6From $1,200 a year - 5
Ghidra
Free planOpen sourceAPIExtensionLinuxmacOS7.3Free plan - 6

IDA Pro
Free planLinuxmacOSWindows7.0From $1,099 a year
