Vineflower
Vineflower is a free, open-source Java decompiler intended to produce readable code from Java classes.
What Vineflower is
Vineflower is a free, open-source Java decompiler intended to produce readable code from Java classes. Its site says it supports modern Java, including J21 and later, and lists automatic output reformatting and multithreaded decompilation. The primary distribution is a JAR available from GitHub releases and Maven Central. It can be run from the command line with archives or files as input; output can go to an archive or folder, or to the console when no destination is specified. A command-line option can decompile Kotlin classes as Kotlin rather than Java. The full distribution includes a Kotlin plugin, which is experimental, and plugins for IntelliJ IDEA @NotNull bytecode and variable renaming; the slim artifact omits built-in plugins. Vineflower can also be added as a Maven or Gradle library, and an IntelliJ plugin is available. Running it requires a Java 17 or newer JVM. The project describes itself as work in progress and welcomes contributions, while its experimental plugin API remains in development. It is licensed under Apache-2.0 and listed for Linux, macOS, Windows, and self-hosted use.
Good
- Supports modern Java, including J21 and later.
- Offers automatic output reformatting.
- Can run multithreaded decompilation.
- Available as a Maven or Gradle library.
- Free and open source under Apache-2.0.
Watch out
- Requires a Java 17 or newer JVM.
- Kotlin decompilation is experimental.
- Project and plugin API remain in development.
Who it suits
Vineflower suits Java developers who need a decompiler through a command line, build dependency, or IntelliJ plugin. Its Kotlin option may also suit users working with Kotlin classes.
Verdict
Vineflower offers several ways to use a Java decompiler, including a JAR, IDE plugin, and library dependency. Its Java runtime requirement and work-in-progress status are important considerations.
Plans and prices
From Vineflower's own pricing page, checked 11 Oct 2001.
| Plan | Price | What it gives you |
|---|---|---|
| Vineflower | Free | No paid plans or usage limits stated |
The facts
Each one read from Vineflower's own pages, with the date it was checked.
What it does
- Command line
- Vineflower can be run from the command line with a JAR and input files.checked 5 Oct 2001
- Configurable output
- Command-line options can write output to an archive or folder, or print it to the console when no output is specified.checked 5 Oct 2001
- Developer support
- Users can ask questions through the project’s Discord, Matrix, or IRC community spaces and mailing lists.checked 11 Oct 2001
- Development status
- The project describes itself as work in progress and welcomes contributions.checked 5 Oct 2001
- Distribution
- The primary distribution is a JAR available from GitHub releases and Maven Central.checked 5 Oct 2001
- Extensibility
- Vineflower has an experimental plugin system for modifying output or implementing new JVM languages, and its plugin API is still in development.checked 11 Oct 2001
- How to run
- Vineflower can be run from the command line as a JAR using a Java 17 or newer JVM.checked 11 Oct 2001
- IDE integration
- An IntelliJ plugin is available for using Vineflower in IntelliJ IDEA.checked 11 Oct 2001
- Inputs and outputs
- Command-line inputs may include archives or files, and output can be saved to an archive or folder, or printed to the console.checked 11 Oct 2001
- Java support
- The site says Vineflower supports modern Java (J21+), including automatic output reformatting and multithreaded decompilation.checked 11 Oct 2001
- Kotlin plugin
- The built-in Kotlin plugin provides an experimental decompiler for Kotlin classes, except in the slim JAR distribution.checked 11 Oct 2001
- Kotlin support
- A command-line option enables decompiling Kotlin classes as Kotlin instead of Java.checked 5 Oct 2001
- Library use
- Vineflower is published on Maven Central and can be added as a dependency in Maven or Gradle projects.checked 11 Oct 2001
- License
- The project’s GitHub repository identifies its license as Apache-2.0.checked 11 Oct 2001
- Other built-in plugins
- The full distribution includes plugins for IntelliJ IDEA @NotNull bytecode and variable renaming; the slim artifact omits plugins.checked 11 Oct 2001
- Output features
- The site lists automatic output reformatting and multithreaded decompilation.checked 5 Oct 2001
- Project status
- Vineflower is described as a work-in-progress project, and contributions are welcomed.checked 11 Oct 2001
- Purpose
- Vineflower is a modern Java decompiler designed for accurate, readable output.checked 11 Oct 2001
- Runtime requirement
- Running Vineflower requires a Java 17 or newer JVM.checked 5 Oct 2001
- Security and compliance
- The opened official pages provide no security or compliance claims for the decompiler.checked 11 Oct 2001
- Slim artifact
- A slim artifact is available without built-in plugins for cases where those plugins are not needed or a smaller dependency is desired.checked 5 Oct 2001
- Usage requirement
- Running Vineflower requires a Java 17 or newer JVM; the site does not state separate operating-system-specific builds.checked 11 Oct 2001
Alternatives to Vineflower
- 1

Blockbench
Free planOpen sourceAndroidiOSWebAPI8.1Free plan - 2

IntelliJ IDEA
Free planAPIExtensionLinuxmacOS7.8From $8.33 a month - 3

Visual Studio Code
Free planWebLinuxmacOSWindows7.3Free plan - 4

Fabric
Free planAPILinuxmacOSSelf-hosted6.7Free plan - 5
Minecraft Development MCP Server
Free planAPILinuxmacOSSelf-hosted6.6Free plan - 6
Quilt Loom
Free planLinuxmacOSWindows6.6Free plan
