Want to get notified on updates? Subscribe by RSS or by email
Release 10.0
2025-05-29

New features:

  • Added a "Bundle launcher runtime" option on the "Java invocation" screen. If you deselect this option, no files will be extracted at runtime, but you then have to distribute the runtime library exe4jlib.​jar and add it to the classpath or module path.
  • Support new Windows 10 DPI awareness settings in the executable manifest. This fixes problems when moving windows between monitors with different DPI settings.
  • The startup error dialog now has a better icon and shows in the native look and feel
  • If the environment variable EXE4J_​LICENSE_​KEY is set, its value is used as the license key. This is useful for CI pipelines.

Bug fixes:

  • There was maximum length limit for the classpath that has been removed in this release
  • Fixed issue with very long lines in .vmoptions file
  • Adoptium JRE installations were not detected
Release 9.0
2023-01-17

New features:

  • Support for creating ARM64 executables on the "Executable info → Architecture" step
  • Optionally global single instance mode on the new "Executable info → Single instance mode" step
  • The per-user single instance mode now optionally covers all active sessions
  • Support for finding Microsoft, Zulu and Temurin JRE installations
  • Show number of configured version-specific VM parameter entries in the "Java invocation" step

Bug fixes:

  • Startup notifications that occurred before a listener was registered were not delivered in order
  • If dark mode was used in macOS 13 (Ventura)​, the exe4j wizard would hang on startup
Release 8.0.1
2022-02-18

New features:

  • Support dark mode for the exe4j wizard

Bug fixes:

  • Regression in exe4j 8.​0: bin/​ant.​jar was missing
  • Changed the way command line parameters are split to behave like java.​exe
  • Fixed broken Java version check in some situations
Release 8.0
2021-03-11

New features:

  • Added support for non-OpenJDK Java launchers
  • Added a --fail-on-warning command line option for the compiler as well as corresponding properties for Gradle and Ant tasks
  • 64-bit install4j launchers now prefer the server JVM on Windows. This fixes problems with recent AdoptOpenJDK Java 11 releases that contain a client VM.
  • Using ~ for the home directory is now supported for the redirection files
  • The minimum runtime Java version is now 1.​8, the exe4j compiler and wizard need a Java 11 JRE

Bug fixes:

  • Could not use absolute locations for the JRE search sequence when the build was not performed on Windows
  • An empty JRE search sequence was reverted to the default after opening the project again
Release 7.0
2020-01-09

New features:

  • Support for version ranges in version-specific VM options for launchers
  • Less verbose and more human-readable project file format that does not write default settings

Bug fixes:

  • For OSGI applications, the method to hide the splash screen could not work due to classloader issues
  • Using archives in class and resource paths with a wildcard in the file name did not work if the path was absolute
Release 6.0.2
2019-01-28

New features:

  • Support for OpenJ9 VMs
  • -J-splash:​none can be passed as an argument to disable the splash screen

Bug fixes:

  • If the environment variable _JAVA_​OPTIONS was set, the version check for Java 9+ did not work on Windows
  • The Java version check did not work for some newer OpenJDKs
  • Launcher for the exe4j wizard UI did not work on macOS
Release 6.0.1
2018-08-24

New features:

  • Removed empty class path warning
  • Uncaught exceptions in exe4j wizard are now written to %TEMP%\​exe4j_​error.​log
  • Support for running the exe4j wizard and its command line tools with Java 10 and Java 11

Bug fixes:

  • Regression in exe4j 6.​0: File and directory chooser buttons in class path configuration did not work anymore
Release 6.0
2017-07-07

New features:

  • Support for Java 9
  • Executables can define a Java 9 module path in addition to the class path
  • Support for the new multi-resolution features in Java 9, including multi-resolution splash screen support
  • In the "Manifest options" step of the wizard, the new default "Java 9+" makes executables DPI aware if Java 9+ is used as a minimum version
  • Added a "/​restart" parameter for service executables

Bug fixes:

  • If a JRE could not be loaded, more than one error message was shown in sequence
  • Extra arguments were not passed correctly when starting a service executable with the /run parameter
  • services installed with /install are now always non-interactive
Release 5.1
2016-02-19

New features:

  • Java version-specific VM parameters for launchers
  • Service launchers: Print options when invoked with the argument /?
  • Command line compiler: Support --license flag together with other options. Added "license" attribute to the ant task.

Bug fixes:

  • exe4jc -L [license key]" returned successfully without an error message even if the config file could not be saved
  • For wildcard classpath entries of type "archive", the shortest available match is now used
  • The current directory was appended to the end of the class path
Release 5.0.1
2015-02-09

Bug fixes:

  • Fixed crash on startup for very large classpaths
  • ant.​jar file was missing in the distribution since 5.​0
  • License keys for install4j 6.​x were not accepted in the wizard
Release 5.0
2014-11-03

New features:

  • Generated launchers no longer poll the file system for the internal single instance and splash screen communications
  • Splash screen API now works for the Java splash screen as well
  • Added "/​run" and "/​run-redirect" parameter for services to start a service in command line mode from a terminal
  • Support DPI scaling for with a setting on the "Executable info → Windows manifest options step" of the launcher wizard
  • Native file choosers and alerts in the exe4j wizard
  • Generated launchers now require at least Java 6, the exe4j IDE now requires at least Java 7
Release 4.6
2014-06-07

New features:

  • exe4j now uses wide characters internally, fixing several problems with characters in directory names from outside the default code page
  • Expand launcher variables and environment variables in working directory
  • exe4j wizard can now run with Java 8
Release 4.5.2
2013-01-15

New features:

  • The exe4j wizard now uses the native look and feel
Release 4.5.1
2012-11-28

Bug fixes:

  • Fixed problem with Windows 8 certification
  • Do not force Java 6 locale behavior for Java 7
  • exe4j license dialog showed invalid evaluation option
Release 4.5
2012-09-21

New features:

  • Generated executables now pass Windows 8 certification

Bug fixes:

  • JAR in EXE service did not delete all temp files
  • Unbalanced quotes for arguments were not handled correctly
  • Fixed a race condition with the exe4j splash screen
Release 4.4.6
2012-06-30

Bug fixes:

  • Several command line options were broken (regression in 4.​4.5)
  • Javadoc formatting of the API documentation was broken (regression in 4.​4.5)
Release 4.4.5
2012-06-18

New features:

  • Java 7 can now be used to run the exe4j wizard and the exe4j command line compiler

Bug fixes:

  • Temporary directory creation is now more robust
  • Remove temporary files if no JRE can be found
Release 4.4.4
2012-01-12

Bug fixes:

  • Fixed locale regressions in 4.​4.3
Release 4.4.3
2011-12-08

New features:

  • Add a compatibility manifest for Windows 7 to generated executables

Bug fixes:

  • Service shutdown did not work correctly when user code redirected System.​in
  • Single instance mode for launchers was broken if there were spaces in the name of the executable
  • Some operations in SWT applications could be slow due an application manifest entry
Release 4.4.2
2011-03-21

New features:

  • Make executable name available for JVM discovery, for example, in VisualVM

Bug fixes:

  • Language selection was ignored, the language for error messages was always English
  • In the fixed VM parameters, a "\​n" was replaced with a newline character
Release 4.4.1
2010-10-22

New features:

  • Allow a * placeholder in classpath archive entries to support frequently changing version numbers of JAR files like in maven projects

Bug fixes:

  • Service arguments embedded in the registered binary path did not work correctly
  • Fixed a deadlock for service launchers
Release 4.4
2010-06-16

New features:

  • Added a /create-i4j-log command line parameter for generated Windows executable to easily create and show a native debug log file

Bug fixes:

  • Fixed problems with service shutdown
Release 4.3.2
2010-06-08

New features:

  • Support for OpenJDK on Windows

Bug fixes:

  • Fixed internal error 7 when a lot of processes were started at the same time
  • Environment variables were not replaced in directory entries of the JRE search sequence
  • Set java.​library.​path explicitly to fix problems on some Windows Server 2003 machines
Release 4.3.1
2010-02-11

Bug fixes:

  • Native libraries screen: Entering the variable %EXE4J_​TEMPDIR% was not possible
  • Fixed hanging processes in single instance mode when parent process exits immediately and many processes were started
Release 4.3
2009-09-17

New features:

  • Added option in "Executable info → Redirection step" of the wizard to append output to existing redirection files
  • Command line argument -x / --require-license for exe4j command line compiler and attribute 'requirelicense' of exe4j ant task to avoid producing evaluation executables
  • Service launchers: Added the option non-interactive after /install to register services that should not be allowed to interact with the desktop.

Bug fixes:

  • A listener registered with com.​exe4j.​Controller#​registerStartupListener was not called reliably for a rapid succession of invocations
  • Added a workaround for an undefined TMP environment variable
Release 4.2
2009-01-20

New features:

  • Support for including other .vmoptions files with the new -include-options [path to .vmoptions file] VM parameter. This works in the fixed VM parameters as well as the .vmoptions files.
  • GUI launchers: Added an optionally recognized -console parameter that connects stderr, stdout and stdin to the console from which the launcher was invoked
  • Redirection files: Absolute paths and environment variables are now supported

Bug fixes:

  • Using a splash screen image in PNG format with an alpha channel lead to a compilation error
  • Running the command line compiler with a relative path name for the config file did not correctly resolve resources
Release 4.1.1
2008-10-30

Bug fixes:

  • Workaround for erroneous virus definition in CA Anti-Virus 2009
Release 4.1
2008-04-03

New features:

  • Support for Java 6 splash screens
  • Launchers can now request heap sizes (-Xmx values) of the same maximum size as the default java launchers if the built-in splash screen is not used. Previously the maximum size was reduced due to fragmentation of the address space.
  • Improved several error messages in the launcher

Bug fixes:

  • Temporary files created by Windows launchers are now deleted immediately after exit rather than on the next launch
Release 4.0.3
2007-03-01

New features:

  • Support environment variables in the names of redirection files
Release 4.0.2
2006-12-20

Bug fixes:

  • Executing a service launcher with the /start argument on Windows did not return with an error code if it failed to start the service
  • arguments with quotes in the argument like arg=​"1 2" were not supported
Release 4.0.1
2006-10-30

Bug fixes:

  • Fixed error messages
  • Fixed a SecurityManager issue with shutting down services
  • Fixed a library dependency problem with Java 6 on older Windows versions
Release 4.0
2006-09-29

New features:

  • Use long path names on Windows if the current code page supports all characters in the path name
  • Display splash screen before JAR files are unpacked for instant feedback
  • Service executables do not require anymore that the main method returns after the initialization
  • Configurable execution level for Windows Vista
  • Option for generating 64-bit executables that work with 64-bit JREs
Release 3.1.4
2006-09-24

Bug fixes:

  • Increased timeout when checking for JRE versions
  • Fix for very long classpaths
  • Changed stack settings to allow huge numbers of concurrent threads
Release 3.1.3
2006-04-24

New features:

  • Support for bundled BEA JRockit JVMs (no registry detection)
  • Java 1.​6 beta is now recognized as a beta release

Bug fixes:

  • Larger timeout when checking for JRE versions fixes problems with JREs on slow network drives
  • Fixed a crash with the "JAR in EXE" mode
  • More robust deletion of temporary files
Release 3.1.2
2006-01-11

Bug fixes:

  • service installation left a temporary file
  • Native library step did not work correctly in exe4j wizard
Release 3.1.1
2005-11-22

Bug fixes:

  • could not start from CD with JRE in relative location on Windows 98/​ME
  • rare ClassNotFoundException when launcher is executed quickly multiple times
  • single-instance mode without a notification handler causes the third and subsequent processes to stay alive
Release 3.1
2005-07-21

New features:

  • option to use only full JDKs and no JREs
  • *.​vmoptions file is read and each line is added as a separate VM parameter (previously *.​exe.​vmoptions)
  • Java 1.​5 early access releases are now recognized as beta releases
  • services on Windows can now interact with the desktop
  • splash screen now works correctly with SWT apps
  • reload splash screen image when modification time changes

Bug fixes:

  • no save dialog was shown on open or reopen
  • working directory was always the first entry in classpath
Release 3.0.2
2005-01-21

New features:

  • setting the environment variable EXE4J_​LOG=​yes will create a log file for the JRE search sequence
  • command line switch for exe4jc to enter a license key without the GUI

Bug fixes:

  • multi-byte character fixes
Release 3.0.1
2004-11-22

New features:

  • full support for Unicode

Bug fixes:

  • fixed startup notification issues when opening multiple files concurrently
Release 3.0
2004-10-18

New features:

  • new API for notification of multiple startups in single instance mode
  • creation of redirection files on demand
  • possibility to redirect stderr and stdout to the same file
  • new process architecture: the started process of an exe4j executable remains the same during the entire execution
  • improved startup error notification
  • possibility to use environment variables in classpath entries
  • full support for UNC path names
  • possibility to set the description for services
  • it is now an error if the path for redirection log files does not exist
  • several usability improvements in the exe4j wizard

Bug fixes:

  • in some cases, entering multiple native library paths did not work correctly
  • stdout and stderr file names were always converted to lower case
Release 2.3
2004-08-12

New features:

  • option whether to use beta JREs on Windows or not
  • in the JRE step, you can now specify patch levels like 1.​4.1_​01

Bug fixes:

  • the main class selector in the Java invocations step did not work when the distribution source directory was relative
  • the .vmoptions file did not work for service executables if the executable had a long filename
  • the command line compiler was not included in the Mac OS X distribution
  • the ant task did not work on Mac OS X