Skip to content
This is the public repository for the CFR decompiler
Branch: master
Clone or download
leibnitz27 Fixes #10 : Introduce explicitly ignored variables if we have a calcu…
…lation we want to preserve which isn't a statement expression.
Latest commit 3c81204 Jun 21, 2019

CFR - Another Java Decompiler \o/

This is the public repository for the CFR decompiler, main site hosted at

CFR will decompile modern Java features - up to and including much of Java 9, 10, 12 and beyond, but is written entirely in Java 6, so will work anywhere! (FAQ) - It'll even make a decent go of turning class files from other JVM langauges back into java!

To use, simply run the specific version jar, with the class name(s) you want to decompile (either as a path to a class file, or as a fully qualified classname on your classpath). (--help to list arguments).

Alternately, to decompile an entire jar, simply provide the jar path, and if you want to emit files (which you probably do!) add --outputdir /tmp/putithere.

Getting CFR

The main site for CFR is, where releases are available with a bunch of rambling musings from the author.

Since 0.145, Binaries are published on github along with release tags.

You can also download CFR from your favourite maven repo, though releases are published a few days late usually, to allow for release regret.


If you have an issue, please DO NOT include copyright materials. I will have to delete your issue.

You can’t perform that action at this time.