Tool
Vineflower
Fernflower-derived decompiler for Java and other JVM languages that continues the ForgeFlower, Fabric and Quiltflower forks, focused on output quality and modern Java, including records, sealed classes, switch expressions and pattern matching through Java 21+. Its command line takes a JAR, ZIP, folder or class file and writes a folder, an archive or console output, with multithreaded decompilation and automatic formatting. It can also be embedded as a library from Maven Central or used in IntelliJ IDEA through a plugin that replaces Fernflower, and the regular release JAR bundles three plugins, including Kotlin support and variable renaming.
Requirements and limitations
- Release at review: 1.12.0, published 2026-04-29 on GitHub and Maven Central (org.vineflower:vineflower). The regular JAR includes the three bundled plugins and the -slim JAR only the decompiler. The reviewed master commit is identical to that tag; pull requests target the develop branches, and develop/1.13.0 was 28 commits ahead.
- The README says Vineflower 1.9+ needs Java 11 or newer and 1.11+ needs Java 17 or newer to run; the build uses a Java 17 toolchain with ./gradlew build. The IntelliJ IDEA plugin is a separate Marketplace download and was not reviewed.
- Inputs are user-supplied JAR, ZIP, folder or class files, with libraries added through -e/--add-external as classpath context. The output comparison on the project website is the project's own; decompiled code is reconstructed and is not the original source.
- Apache-2.0. The README calls it a fork of JetBrains' Fernflower, MinecraftForge's ForgeFlower and FabricMC's Fernflower fork and a continuation of Quiltflower; its console entry point keeps Fernflower's org.jetbrains.java.decompiler package. No classes were decompiled.
About this entry
- Type
- Tool
- Category
- JVM bytecode tools
- Relationship
- Foundation tool
- Targets
- App
Sources reviewed
The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.
Primary sources
- README.md GitHub · Vineflower/vineflower · Revision b827398
- build.gradle#L25-L35 GitHub · Vineflower/vineflower · Revision b827398
- build.gradle#L223-L256 GitHub · Vineflower/vineflower · Revision b827398
- settings.gradle GitHub · Vineflower/vineflower · Revision b827398
- ARCHITECTURE.md GitHub · Vineflower/vineflower · Revision b827398
- LICENSE.md GitHub · Vineflower/vineflower · Revision b827398
- https://github.com/Vineflower/vineflower/releases/tag/1.12.0
- https://vineflower.org/usage/
- https://repo1.maven.org/maven2/org/vineflower/vineflower/maven-metadata.xml