2011-07-19 79 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)都是這樣做的。

相關問題