I have a console application which should accept a filename as a command-line argument. The filename can be relative, and should be relative to the current working directory.

The application has a classpath with jar files installed with the application.

I have not been able to get the launch4j-generated executable to run unless the working directory is changed to the application directory (either by the user or by the launch4j "Change dir" option).

However, changing the working directory changes the meaning of the relative paths.

How can I configure launch4j to use a classpath in the application directory without changing the working directory at runtime?