JavaPackager
JavaPackager is a hybrid plugin for Maven and Gradle that packages Java applications as native Windows, macOS and GNU/Linux executables, and generates installers for them.
With a single plugin and a few lines of configuration you get:
- A native app folder with an executable launcher, your JAR and its dependencies, and optionally a bundled JRE.
- A customized JRE built with
jdepsandjlink, containing only the modules your app needs. - Installers and packages: Inno Setup EXE, MSI and MSM on Windows; DMG and PKG on macOS; DEB, RPM and AppImage on GNU/Linux.
- Zipballs and tarballs of the app folder.
- Code signing of Windows executables and installers, and code signing and notarization of macOS apps.
Why JavaPackager
It was born while teaching students how to build and distribute their Java apps: a chain of several plugins was needed to do it, so JavaPackager became a plugin to rule them all. The same configuration works with Maven and Gradle, and the same project can be packaged for every platform.
Where to start
- Package your app with Maven or with Gradle.
- See what you get in Generated artifacts.
- Upgrading from 1.x? Read Upgrading to 2.0 first: the coordinates changed.
- Look up every property in the Configuration reference.
Apps packaged with JavaPackager
| App | Description | Stars |
|---|---|---|
| WePush | Bulk message sender: WeChat templates, SMS, email and more | |
| MooTool | Handy tool set for developers | |
| bilibili-backup | Backup and restore of Bilibili accounts | |
| RedisFX | Lightweight Redis GUI client (JavaFX) | |
| RedisFront | Cross-platform Redis client (Swing) | |
| MooInfo | System and hardware information viewer | |
| Monitee agent | Server monitoring API and backend for Monitee | |
| MQTT Insight | MQTT GUI client | |
| VisionBench | Develop, test and tune EasyOpenCV pipelines on your computer | |
| windows-process | Windows process manager | |
| Java Geometry Expert | Automated geometry theorem proving | |
| Rawky | Pixel art editor | |
| RODA-in | Creates submission information packages for digital preservation | |
| Breakout | Interactive 3D cave survey viewer | |
| GistFX | GitHub Gist manager | |
| Astro Pixel Processor | Astrophotography image processing | — |
| Spektar Design Lab | Visual design of VST audio effects and instruments | — |
Is your app packaged with JavaPackager? Tell us and we'll add it to the list.
Help wanted
JavaPackager is maintained by volunteers in their spare time. If you'd like to help with issues, reviews or documentation, join the discussion.