Application Launcher Properties

InstallShield 11 Universal

Descriptions of and instructions for setting the Standard, Advanced, and Platform-Specific properties of a Java application Launcher are provided below. These instructions also apply to setting the properties of installation and Product Uninstaller launchers.

Note

The properties described below are unique to this action. The properties that are common to all actions are described in Common Action Properties.

Standard Properties

Property Description
Display Name This is the name of this launcher as it displays in the interface. If is for administrative purposes only.
Title Specify the title of this launcher. As a default, it will display at the top of the dialogs at run time unless the dialog's Title property is changed.
Main Class This property represents the Java class that contains the main method to be executed by this launcher. Either type the main class or click the ellipsis ("...") and the Launcher Wizard opens. Follow the instructions displayed in the Launcher Wizard.
Main Class Arguments Specify the argument(s) you want to pass to the Java application being launched. Enter the arguments in the sequence that they should appear in the command line. These arguments will be added to the launch command after the main class name.
Class Path Specify the classpath for your installed application by clicking the ellipsis ("...") and entering each classpath in a separate entry. Do not include classpath separators—these are automatically added by the application Launcher.

Path names should be relative to the installed location of the launcher itself, and should reference the installed location of the JAR file or directory structure.
  • If the launcher will always be executed from within the directory where it is created, then specify relative paths to your classpath entries from that location. For example:

    app/MyApp.jar
    "app libs/MyLib.jar"


    Note

    When specifying classpath entries that include spaces, enclose each entry in double quotes, as illustrated in the example above.

  • If the launcher can be executed from any working directory, then provide absolute paths in the classpath entries using either the $P or $PATH string resolution variables. For example:

    "$P(appFiles.absoluteInstallLocation)/MyApp.jar"
    --OR--
    "$PATH($P(appFiles.absoluteInstallLocation), MyApp.jar)"

    "$P(libFiles.absoluteInstallLocation)/MyLib.jar"
    --OR--
    "$PATH($P(libFiles.absoluteInstallLocation), MyApp.jar)"

    Note

    When using string resolution to provide an absolute path, it is a good practice to always enclose it in double quotes because the end user may install the product to a path that contains a space(s).

Advanced Properties

Property Description
System Properties These are the Java system properties for the Java application being launched. They are entered as propName=propValue.

The "=" is parsed out and replaced by the appropriate separator specific to the JVM being used to launch the product. Additionally, the appropriate command line option required by that JVM is automatically included in the launch command. If you need multiple system properties, then add one per line. They will display with a comma separator in the interface.
Wizard Arguments Specify the argument(s) you want to pass to the application being launched. Enter them exactly as they should appear in the command line, and they will be added to the launch command after the main class name of the Java application. This property is required in Universal Dynamic Suites.
Java Arguments Specify other arguments for Java. This can be done in a JVM-neutral way. The syntax for such an approach is as follows:
%IF_EXISTS%("<setting name>", "@<setting name>@")

%IF_EXISTS% is a keyword that tells the Launcher to perform conditional text replacement. The first argument to this function is the name of a JVM setting. If the specified setting exists for that JVM, then the second argument is resolved and placed in the launch command for the product as an argument to Java.

Note

Both of the arguments passed to this function need to be enclosed in double quotes. If they are not, then they resolve to an empty string. You can include multiple %IF_EXISTS% function calls in this propertybe sure to place a space between them.

For example:

%IF_EXISTS%("INIT_HEAP_SIZE", "@INIT_HEAP_SIZE@20m")
%IF_EXISTS%("MAX_HEAP_SIZE", "@MAX_HEAP_SIZE@40m")

Tip

This is the command you would use to increase the heap size to accommodate the size of your project. If you receive an "out of memory" message when building or running your project, use this Java argument to increase the heap size until the error message is no longer received.

Note

  • If Java 1.2.2+ is used to launch the product, the above string resolves to -Xms20m -Xmx40m.
  • If JVIEW is used, it resolves to an empty string.

To see the settings that are available, open the JVM search files (file names end in .jvm) in the <InstallShield Universal Home>/jvms/<platform> directory using any text editor.

Warning

This property should not be used for arguments to Java that are already handled by other properties within this action such as the classpath since that would result in the same command line option being specified to Java multiple times.

JVM ID This is a required field that specifies the ID for the JVM to be used, and is case sensitive. Leave this property set to the default value of "jvm" if you have not changed it for the Product Uninstaller JVM properties. If you change it here, then you must also change it in the JVM ID property of the Product Uninstaller JVM Resolution in the Advanced tab of the Launchers view.

To change it, click the ellipsis ("..."), and the Select JVM Resolution dialog box displays the Install Sequence. Select either the Product Uninstaller or a JVM Resolution action, depending upon which JVM you want this application Launcher to use. After clicking OK, the selected JVM ID value automatically displays.

Platform-Specific Properties

The Platform-Specific properties are generally consistent across platform packs. To activate a platform, select the platform and click its Enable check box. Its Delete icon changes to a checked check box and its properties can then be set. To remove a platform and its properties, clear its check box, and the Delete icon returns.

Property Description
File Name This field is required. This is the name of the executable file that this application Launcher should create at run time. Its location is relative to the value of the Install Location property of the component that contains the executable it targets or, if the Install Location property is not set for the component, then the Install Location value of the component's feature.

For example, the name of this file for Windows could be MyApplication.exe; for Solaris, MyApplication.bin (executed by typing ./MyApplication.bin).
JVM Not Found Message This property enables you to specify a custom message to display to the end user at run time if the Java product cannot find a JVM. This enables you to give specific instructions to the end user on how to satisfy the requirement of having a JVM installed on their machine in order to execute the Java product. For example, you can specify the URL to your Web site where you are providing JVMs for your customers to download. This message is only available in text, so an actual link cannot be provided.

On Unix systems and in console mode, the message is sent to the stdout. On Windows systems, a message box displays.

The default message is "No Java Runtime Environment (JRE) was found on this system." To change this, click the ellipsis ("...") and a Specify Text dialog box opens. Highlight the current text and type the message that you want to display.
Launcher UI Display Time Specify the number of seconds the launcher dialog box should display on the screen after the Java application starts. If the value is set to 0 (zero), then the launcher dialog box disappears as soon as the Java process starts. This property setting allows the UI to remain displayed while Java itself is initializing so the end user can see that processing is occurring. The launcher dialog box always displays for an installer while it searches for a JVM and/or installs a bundled JVM except when the installer is run in silent mode.
Show Console Set this property to "True" to display the Java console while the installed Java application is executing; set it to "False" to hide the Java console. If this value is set to "False," then the end user can still trap the console output of the Java process by using the -is:log <log file name> command line option, which logs the output to the specified log file name. Or, they could use the command line option -is:javaconsole to override this property value and turn on the Java console.
User Interface
Windows only
This property indicates whether this application Launcher should be created as a console or GUI launcher.

See Also