Launch4j is a cross-platform tool for wrapping Java applications distributed as jars in Windows native executables. The executable can be configured to search for a certain JRE version or use a bundled one, and it's possible to set runtime options, like the initial/max heap size. The wrapper also provides better user experience through an application icon, a native pre-JRE splash screen, a custom process name, and a Java download page in case the appropriate JRE cannot be found. The increase in size of the application is small.
License: BSD License (revised)
Changes:
Support for 64-bit Windows, 64-bit JRE, and IBM JRE was added. A Java runtime preference option was introduced. It is now possible to set the initial process priority and allow running only a single instance of the application. Dynamic initial and maximum heap sizes were added. The error reporting was redesigned and now supports custom messages. The runtime logging produces more detailed output. Various bugs were fixed, and the license was changed to a less restrictive one.
More...