2011-07-19 65 views
5

这与How can I create a .msi file for a Java program ? (eclipse)类似,但是也特别关于捆绑JRE。如何在MSI中将Java依赖应用程序与JRE捆绑在一起

我目前正致力于为我的产品构建MSI,以便它可以作为Windows Home Server的附加组件安装。 安装程序必须是静默的MSI安装程序。

我的产品取决于Java 1.6。我想将MSI内部的Java捆绑在一起,但不一定是安装 JRE,只需将文件复制到我的产品目录并从那里执行就没有问题。

最初我尝试安装JRE作为第一步。我使用了JRE's silent installer,但事实证明,因为JRE通过另一个MSI自行安装,所以一次MSI安装运行规则被破坏,因此无法安装JRE。

所以我改为复制JRE文件。我已经成功创建了一个包含所有项目的MSI,但它的入门级别高达60MB!这对我的应用来说大约是33MB,剩下的就是JRE。捆绑JRE的普通setup.exe约为30MB,所以我认为在后一种情况下压缩要好得多(我也在那里使用Pack200压缩)。

我正在使用WiX构建MSI并打开了压缩。

将JRE与依赖应用程序捆绑在MSI中的最佳方式是什么?

回答

4

恕我直言,你应该简单地将整个(解压缩)JRE目录添加到你的安装文件。然后从给定的已知路径运行JRE。许多产品(例如DB2,Oracle 11g甚至WebSphere Application Server)都是这样做的。

相关问题