Java Virtual Machine Tab

In this page you can set the parameters for the Java Virtual Machine.

Java virtual machine tab

NoteAll the latest Java Distributions (e.g. OpenJDK, AdoptOpenJDK, etc.) are supported. Our Java Product Launcher supports the AdoptOpenJDK Java distributions only when AdoptOpenJDK is installed with FeatureOracleJavaSoft feature (e.g. using ADDLOCAL=FeatureEnvironment,FeatureJarFileRunWith,FeatureOracleJavaSoft command line switch).

Settings

JRE version

You can specify the minimum and maximum allowed Java Version. Advanced Installer only supports Java 2, which means a minimum JRE version 1.2. Additionally, in the Preferred JRE Version Dialog, you can edit a list of preferred versions that will be selected if found on the target computer.

NoteJVM path is searched in the registry and in JAVA_HOME environment variable.

JVM parameters

This is an optional field. You can easily specify the JVM parameters. Click on the [ ... ] button in order to go to the JVM Parameters Dialog.

Command line

Here you can specify arguments that your main method will always receive. These arguments will be appended to the other arguments that may be receive from the system.

Virtual Machine Type

There are two types of virtual machines: client and server. You can choose one of the following combinations:

  • Favor client - Advanced Installer looks for client or server Java Virtual Machine in the JDK or JRE installed on your computer. It returns the Java Virtual Machine with the highest version (client or server). The client version is favored in the sense that the client Java Virtual Machine is looked up first, and if it is found, the search stops. This is the default option for Java Virtual Machine type.
  • Favor server - Advanced Installer looks for server or client Java Virtual Machine and returns the server Java Virtual Machine with the highest version (if it is found). The server version is favored in the sense that the server Java Virtual Machine is looked up first, and if it is found, the search stops, otherwise the client Java Virtual Machine is looked up.
  • Server only - Advanced Installer looks only for the server Java Virtual Machine. If it is not found then the user is prompted to browse a JRE with a valid server Java Virtual Machine.

Virtual Machine Source

Specify the Java Virtual Machine's source.

  • JRE or JDK - either the JRE or JDK will be used.
  • favor JRE - the JRE will be preferred. It will be looked up first.
  • favor JDK - the JDK will be preferred. It will be looked up first.
  • only JRE - the JRE will be used.
  • only JDK - the JDK will be used.

Provider

Specifies the Java Virtual Machine's provider.

  • Sun JVM - The application will only run on a Virtual Machine developed by Sun Microsystems.
  • JRockit VM - The application will only run on the JRockit Virtual Machine developed by Oracle.
  • IBM VM - The application will only run on the IBM Virtual Machine developed by IBM.
  • Preferred Sun JVM - This is the preferred Virtual Machine. If found, the application will use it. If not, it will try to use the available Virtual Machine.
  • Preferred JRockit VM - If a JRockit Virtual Machine is found, the application will use it. In any other cases the available Virtual Machine will be used.
  • Preferred IBM VM - If an IBM Virtual Machine is found, the application will use it. In any other cases the available Virtual Machine will be used.
  • Any - The application will run using any Virtual Machine found.

Stream redirection

Output Stream

Specify the location of the file that will contain Java Products's output stream. This field is of Formatted Type. Use the [ ... ] button to display the Edit Formatted Type Dialog that will allow you to insert a reference to folders, properties and installtime or runtime environment variables.

Error Stream

Specify the location of the file that will contain Java Products's error stream. This field is of Formatted Type. Use the [ ... ] button to display the Edit Formatted Type Dialog that will allow you to insert a reference to folders, properties and installtime or runtime environment variables.

Append Error Stream to File

By enabling this option, the errors will be written at the end of the file rather than deleting the errors from previous sessions.

Append Output Stream to File

By enabling this option, the ouput will be written at the end of the existing file rather than deleting the output from previous sessions.

Including the application startup time into the file name

To include the application startup time into the file name you need to enclose the Date and Time format specifiers between %. The format specifiers you can use are regular Date and Time specifiers like: y, M, d, h, m, s and also L for milliseconds.

Sample specitied file path:

[APPDIR]output-%yyyy-MMM-dd HH-mm-ss-L%.log

Sample resulting filename:

C:\Your Company\Your Application\output-2014-Mar-06 14-43-38-373.log

Java Library Path

You can modify the Java Library Path (java.library.path) system property by adding values to this list.

By default Advanced Installer includes the following items in the Library Path property:

  • the current directory
  • the "Path" environment variable
  • the loaded JRE \ lib directory

If you need to load a library from a different location you have to include it in this list. All values you specify will be placed at the above list's beginning. Use the [ Folder... ], [ Property... ] or [ Env Var... ] button to add a path.

System Library Path

By adding values to this list, you can add paths to the system's Path environment variable default value when this Java product is launched. This is useful when a library that you are using is trying to link to other libraries. These are searched using the values in the Path system variable. The locations that you add to the Path variable will have the biggest priority. So, if a library is present in more locations then the search algorithm will prefer the location specified in that list. Use the [ Folder... ], [ Property... ] or [ Env Var... ] button to add a path.

The Path system variable's default value will not be changed for other applications.

Topics