Skip to content
This is the public repository for the CFR Java decompiler
Branch: master
Clone or download

Latest commit


Type Name Latest commit message Commit time
Failed to load latest commit information.
developer_docs Create May 31, 2019
src Fix #135 - illegal array iterator resugaring Mar 30, 2020
.gitignore Add Eclipse files to gitignore Nov 8, 2019
LICENSE Duplicate license in root. Jul 22, 2019 Update for j14 Feb 21, 2020
cfr.iml adding Keyword token type, adding keyword to Dumper and printing stuf… Oct 31, 2019
pom.xml 0.150-SNAPSHOT Feb 21, 2020

CFR - Another Java Decompiler \o/

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

CFR will decompile modern Java features - including much of Java 9, 12 & 14, 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 languages 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.