How to associate a Java dependent application with a JRE in MSI

This is similar to How to create a .msi file for a Java program? (eclipse) , but especially with the JRE union.

I am currently working on creating an MSI for my product, so it can be installed as an add-on with Windows Home Server. The installer must be a silent MSI installer.

My product depends on Java 1.6. I want to bundle Java inside MSI, but it is not necessary to install the JRE, just copying the files to the product directory and executing from there will be fine.

At first I tried to install the JRE anyway as the first step. I used the JRE silent installer , however, it turned out that since the JRE installs itself through another MSI, under the covers, one-MSI- The "install-work-once" rule was violated, and therefore the JRE could not be installed.

So, I changed this to copying JRE files. I managed to create an MSI with all the elements, but it comes in a whopping 60 MB! This is about 33 MB for my application and the rest is JRE. My regular setup.exe file, which binds the JRE, is about 30 MB, so I assume that compression is much better in the latter case (I also use Pack200 compression there).

I use WiX to create MSI and enable compression.

What is the best way to associate a JRE with a dependent application inside MSI?

+5
1

IMHO () JRE . JRE . (, DB2, Oracle 11g WebSphere Application Server) .

+4

All Articles