An editor extension and JetBrains plugin that gives Nx and Lerna monorepos a visual UI for projects, tasks, generators and the task graph.
Liubsyy/JarEditor
IntelliJ IDEA plugin for editing class and resource files inside a jar directly, without extracting it first.
- Stars
- 791
- Forks
- 62
- Open issues
- 10
- Last commit
- 2 months ago
What is it?
JarEditor is a JetBrains IDE plugin for modifying the contents of a jar file in place. Instead of unpacking an archive, editing files, and repacking it, you open the jar inside IntelliJ IDEA, change class or resource files, and write the results back into the archive.
The plugin decompiles class files for editing and compiles the edited Java source when you save. You can add, delete, rename, copy and paste files and directories inside a jar, search jar contents, and export a source jar. It also handles Spring Boot fat jars, nested jars, war, ear, zip and aar archives, and Kotlin classes. Decompilation is available through Fernflower, CFR, Procyon and Jadx.
For obfuscated code where decompiled output is unreliable, a class bytes tool offers Javassist editing of fields, methods and constructors, and integrates with Visual ClassBytes for bytecode-level editing.
Key features
- 01Edit class and resource files inside a jar without extracting it
- 02Add, delete, rename, copy and paste files and directories in a jar
- 03Search jar contents, using decompiled source for class files
- 04Support for Spring Boot jars, nested jars, war, ear, zip and aar
- 05Export source jars and choose the target Java version when compiling
- 06Bytecode editing through Javassist and Visual ClassBytes
Use cases
- Quickly patching a bug in a third-party library jar when no source or new release is available
- Modifying configuration or resource files packaged inside a Spring Boot jar
- Inspecting and editing obfuscated classes with bytecode tools
- Making small changes to a jar without setting up a full build
Quick start
- 1
Install JarEditor from the JetBrains Marketplace in IDEA 2020.3 or later
- 2
Open a .class file or double-click a jar to edit it, then click Save(Compile) and Build Jar
Things to know
- It is an IntelliJ IDEA plugin, so it requires IDEA and does not run standalone.
- Compiling class edits depends on the JDK selected in your SDK list and the Libraries configured in the project.
Topics
FAQ
- What is JarEditor?
- IntelliJ IDEA plugin for editing class and resource files inside a jar directly, without extracting it first. JarEditor is a JetBrains IDE plugin for modifying the contents of a jar file in place. Instead of unpacking an archive, editing files, and repacking it, you open the jar inside IntelliJ IDEA, change class or resource files, and write the results back into the archive.
- Is JarEditor free to use? What license does it have?
- JarEditor is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is JarEditor still maintained?
- Updated within 6 months. The last commit to JarEditor was on Aug 23, 2026.
- What can I use JarEditor for?
- Quickly patching a bug in a third-party library jar when no source or new release is available Modifying configuration or resource files packaged inside a Spring Boot jar Inspecting and editing obfuscated classes with bytecode tools Making small changes to a jar without setting up a full build
- How do I install JarEditor?
- Install JarEditor from the JetBrains Marketplace in IDEA 2020.3 or later Open a .class file or double-click a jar to edit it, then click Save(Compile) and Build Jar
- Where can I get JarEditor?
- The source code and installation instructions are on GitHub: https://github.com/Liubsyy/JarEditor
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Command-line and GUI tools that decompile Android Dex, APK and related files into readable Java source code.
The Kotlin programming language and its compiler, standard library, and build tooling, developed by JetBrains for multiplatform development.
A translation plugin for IntelliJ-based IDEs and Android Studio that translates words, documentation and text inside the editor.
A lean Python 3 implementation that runs on microcontrollers and other resource-constrained devices, with hardware access modules.
Rust-based toolkit for Ethereum smart contract development, with Forge, Cast, Anvil and Chisel for building, testing, and interacting with EVM chains.