I am performing separate unattended installations of multiple versions of an application on Windows using a response file. The installer includes a bundled JRE. I know that the installer will record the JREs that were installed and reference them on subsequent installations of the same application and, barring that, will reference any installed system JRE.
I want to force each installation to ignore other JREs, install the bundled JRE, and to have the application use that bundled JRE. I do not have the option of generating a new installer.
The installer will use them if detects the presence of recorded JREs from application installations, or if it detects the presence of a system-installed JRE. There don't seem to be any options to force the installer to install the bundled JRE and then force the application (the launcher) to use that bundled JRE.
Docs reference the search sequence:
Apart from searching for previous installations with the same application id, the Windows registry, well-known standard installation locations and paths in environment variables, ...
I can ignore JREs from previous installations of the application by first deleting the "ej-technologies" entries in the Windows registry before installing, but I can't figure out how to then ignore the system JRE. I've tried unsetting JAVA_HOME and removing references in the PATH variable to no avail.
- Are there some installer options that I've missed?
- If not, any suggestions on how I can trick the installer into thinking that there are no available JREs and to install the bundled JRE?
- Where is the installer looking? (If I knew how it found the system JRE, I might be able to hack around that.)
I am performing separate unattended installations of multiple versions of an application on Windows using a response file. The installer includes a bundled JRE. I know that the installer will record the JREs that were installed and reference them on subsequent installations of the same application and, barring that, will reference any installed system JRE.
I want to force each installation to ignore other JREs, install the bundled JRE, and to have the application use that bundled JRE. I do not have the option of generating a new installer.
The installer will use them if detects the presence of recorded JREs from application installations, or if it detects the presence of a system-installed JRE. There don't seem to be any options to force the installer to install the bundled JRE and then force the application (the launcher) to use that bundled JRE.
Docs reference the search sequence:
Apart from searching for previous installations with the same application id, the Windows registry, well-known standard installation locations and paths in environment variables, ...
I can ignore JREs from previous installations of the application by first deleting the "ej-technologies" entries in the Windows registry before installing, but I can't figure out how to then ignore the system JRE. I've tried unsetting JAVA_HOME and removing references in the PATH variable to no avail.
- Are there some installer options that I've missed?
- If not, any suggestions on how I can trick the installer into thinking that there are no available JREs and to install the bundled JRE?
- Where is the installer looking? (If I knew how it found the system JRE, I might be able to hack around that.)
1 Answer
Reset to default 0You would have to update to install4j 11, where there is a search sequence entry to only find JREs from previous installations.