The JVM resolution bean is a product action that manages and
executes the search for a VM when the installer is run. It is
closely tied to the setup and execution of the Launcher Bean. It is
called the JVM 'Resolution' bean because it uses its properties to
resolve the location and settings for the VM required by the
application being installed.
To enable the properties for a platform, check the
Include box next to the Platform Properties title in the Properties
View.
NOTE: |
For HP-UX, there are two platforms from which to chose: Hpux1020 and Hpux11x. Generic Unix Distribution is for Generic Unix. |
InstallShield has provided a set of bundled VMs. You can see which
are available by clicking the Add JVM... button in the Search Instructions
dialog box. They are executable files residing in the appropriate platform-specific subdirectory below the "jvms" subdirectory where you installed MultiPlatform.
If any VM is acceptable for your application, it is recommended that you add
all VM packages to the list in the JVM Search Instructions
property.
You will need to enter platform-specific property values for each platform
on which you wish the VM to be resolved, even if the property settings are
identical for those platforms. The reason for this is that you may very
often want to have a different search process on different platforms.
JVM Resolution Algorithm
The following steps describe the algorithm used when resolving a JVM based
on the property values specified for this bean by the developer. If any one
step results in matching a VM, the remaining steps are bypassed, and this
bean marks that VM as its match.
- If you set Use Installed JVM to "True", and there is already a JVM installed
on the target machine in the "Install Directory", then it will match that JVM
immediately. This will only occur if the Install Location is non-blank.
- The JVM Resolution property determines the order in which the next three
resolution steps occur. Those steps include "Search", "Current" and "Install",
and they are described in the following steps.
- Search makes use of the JVM Search Instructions property of this
bean. Specify which VMs you wish to match, in which order, on
the target machine. You can also specify the point at which a full disk search
should occur. The bean help for JVM Search Instructions provides details on
how to set up this property. If the JVM Search Instructions property is empty,
then this step is skipped.
- Current reuses the VM being used for the installer itself, if
possible. This only works if the installer was executed using a native
distribution, since the native distribution communicates to the installer
information about the VM it has located. If the Use Current property is
"False", then this step is skipped.
- Install installs the bundled JVM specified by the Bundled JVM
property. If this property is blank, then this step is skipped.
The end result of this process is that if a VM is matched, this JVMResolution
bean keeps the information about the matched VM, and this information is "keyed"
by the "JVM Id" property. It was mentioned above that the JVMResolution bean
is intimately tied to the Launcher bean, and the JVM Id property is the
property that ties them together. The purpose of the Launcher bean is to provide
a native executable that launches a Java application. The executable that is
created by a Launcher bean uses the VM that was matched by the previously
installed JVMResolution bean whose JVM Id property is the same as the Launcher bean's JVM Id property.
For step-by-step instructions, see the MultiPlatform User's Guide, Chapter 2.2 Product Actions/JVM Resolution.