Launch4j

by Grzegorz Kowal

Launch4j is a cross-platform tool for wrapping Java applications distributed as jars in lightweight Windows native executables.

Operating system: Windows

Publisher: Grzegorz Kowal

Antivirus check: VirusTotal report

Report a Problem

Launch4j is a cross-platform Java executable wrapper for creating lightweight Windows native executables. It can wrap jars in native executables or just launch them, so the application can be distributed and started like a regular Windows program. It also provides advanced JRE search, application startup configuration and better user experience.

Features

• Cross-Platform: Launch4j is a cross-platform tool that can be used on Windows, Linux and Mac OS X systems. On every platform it creates native executables for Windows.

Launch4j allows developers to quickly and easily create native Windows executables for their Java applications.

• Native Executable: Launch4j creates native Windows executables which are small and lightweight. This makes them easy to distribute and deploy.

• JRE Search: Launch4j provides advanced JRE search capabilities. It can use a bundled JRE or search for an installed Java runtime in a given version range, and open the Java download page if no suitable version is found.

• Application Configuration: Launch4j allows for application configuration before launching the jar. This includes setting the classpath, heap size, JVM options, environment variables, icon, splash screen and version information.

• User Experience: Launch4j provides a better user experience than running the jar directly. It can provide an application icon, a native pre-JRE splash screen, custom error messages and a single instance option.

• Support: Launch4j comes with documentation on its website, and the project is hosted on SourceForge. The latest release, version 3.50, came out in November 2022.

• Open Source: Launch4j is open source and free to use. It is licensed under the BSD license (the head subproject under the MIT license) and may be used for wrapping commercial applications.

• Easy to Use: Launch4j is very easy to use. It has a graphical user interface which makes it easy to configure and create executables, and it can also be run from the command line with an XML configuration file.

• Integration: Launch4j can be integrated into builds through an Ant task and a Maven plugin.

• Compatible: Launch4j works with modern Java runtimes, including Java 9 and later, and supports 64-bit JREs and JDKs.

• Security: Launch4j supports digital signing of the created executables with the included sign4j tool.

• Extensibility: Launch4j can restart the application after a crash, pass command-line arguments and set the process priority.

Windows, Linux or macOS
Java 8 (1.8) or later to run Launch4j
Created executables run on all Windows versions

PROS
Wraps Java applications into native Windows executables.
Runs on Windows, Linux and macOS to build Windows executables.
Wrapped applications behave like native applications.

CONS
Creates executables for Windows only.
Difficult to use if not technically inclined.
Lacks detailed instructions for complex tasks.
WaveDrom Editor
WaveDrom Editor is an open source, web-based tool for visualizing and editing digital timing diagrams.
File Monitor (formerly Filemon)
File Monitor (formerly Filemon) is a Windows-based system-monitoring tool used to track and report file system, registry, process and network activity.
Oracle JDeveloper
Oracle JDeveloper is an integrated development environment (IDE) for building Java-based applications and components.
Microsoft PlayReady
PlayReady is a digital rights management (DRM) platform developed by Microsoft that enables content owners to protect their intellectual property.
SmartGit
SmartGit is a graphical Git client with support for SVN and Pull Requests for GitHub and Bitbucket.