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.