2012-09-20 39 views
2

我安裝widget.zip壓縮文件建立了install.jar的部分包括以下內容:我可以安裝使用的IzPack 5文件而不會被的IzPack

  • 32bitJava
  • install.jar
  • widgetinstaller .EXE
  • widgetinstaller.ini
  • widgetinstaller.ico

總結:

  • 32bitJava是從Oracle下載的32位JRE
  • install.jar是的IzPack
  • widgetinstaller創建安裝*由winrun4j創建提供安裝一個exe包裝。

因此,使用此設置,我可以安裝我的應用程序,而無需用戶必須安裝Java運行時。

但是一旦安裝了實際的應用程序還需要一個java運行時才能真正運行。所以目前一份32bitJava作爲izpack安裝的一部分包含在內,即它存在於install.jar中,並在安裝時安裝。

但是這意味着我有兩個JVM副本,並且因爲32bitJava比我的實際應用程序大,所以我的下載太大了。

那麼如何在安裝過程中/安裝後將32bitJava文件夾複製到安裝中,而不必將其包含在install.jar中?

回答

2

你想要做的JVM的一個「鬆」包。鬆散包不需要包含它安裝的文件,因此它可以將文件從zip文件複製到位,而不是使用嵌入到jar中的文件。

<pack id="java" name="java" required="yes" preselected="yes" loose="true"> 
    ... 
    <executable ...> 
    <!-- something appropriate to install java --> 
    </executable> 
</pack> 
+0

感謝西蒙,看起來這可能是我想要的東西,我會本身,如果我能得到它的工作和彙報。 –

+0

還沒有嘗試過這個呢,但手指交叉它會工作,所以頒獎賞金 –

+0

嗨,是三江源它的工作。但是要注意它的有點混亂,你必須設置爲文件src什麼,你需要對你期望能夠在目標計算機上的文件夾複製到相同的相對位置,以INSTALL.XML因爲它會在安裝時install.jar,但隨後指定INSTALL.XML而不是install.jar –

0

將文件打包到自解壓存檔/ zip中,並且作爲解壓縮過程的一部分,將文件提取到您需要的位置。

有維基百科是關於自我解壓文件的詳細信息:http://en.wikipedia.org/wiki/Self-extracting_archive

+0

用的IzPack或代替的IzPack在一起,是這樣嗎? –

+0

看看這裏:http://izpack.org/documentation/izpack-utils.html似乎有與的IzPack – L0j1k

+0

我不認爲這這樣一些指令實際地址爲 –

0

,而不是被迫以包括install.jar Java安裝,你爲什麼不只是有install.jar安裝程序,在這裏包括一個鏈接: http://www.java.com/inc/BrowserRedirect1.jsp?locale=en?這是下載當前版本的Java的鏈接。

要創建這樣的鏈接,請右鍵單擊>新建>快捷方式,將鏈接粘貼到第一個對話框中,單擊下一步,然後將其命名爲「Java安裝」。這將最多添加4 KB到您的軟件包,並仍然允許您安裝Java(但是,用戶將不得不手動點擊此選項)

我使用瀏覽器重定向URL,因爲它可以識別Java人需要什麼他們的計算機(操作系統和處理器位)

+0

有很多關於32位/ 64位Java和32位/ 64位系統之間的相互作用在Windows混亂的絕對路徑,並且還很多對一般的Java桌面系統的消極。如果他們所需要的一切都是一攬子打包,並且沒有明確提到Java,我認爲它是一個更好的用戶體驗。 –

+0

即鏈接自動重定向到Java的所需版本,32位Java 32個系統,以及用於64個系統的64位的java。 Java是現在很多更容易安裝比它的早期天(我記得有所有的源文件解壓到Program Files文件夾) – Azulflame

+0

install.jar需要一個JVM安裝在礦井首位運行反正 –

0

如何創建一個小的,安裝後的實用程序將可執行文件複製到位置?你可以在一個小的shell腳本(在Windows或批處理文件),甚至有點C上創建它++實用程序僅僅將JVM的位置,你需要這一點。這樣,在安裝實用程序之後,您將觸發安裝後的代碼,然後將JVM複製到所需的位置。

+0

我曾嘗試這一點,但有麻煩它的工作,但麻煩的是,這將是做出來的安裝程序,並給沒有反饋對用戶而言,因爲JVM非常大,這可能會導致用戶認爲安裝已掛起。 –

+0

如果您向用戶提供一條表明安裝程序正在工作的非常簡單的消息,則不適用。如果你考慮這個問題,任何解決這個問題的其他辦法是*也會*花費很多時間在複製操作上,所以這是不可避免的。你應該能夠隨便扔一條線在安裝後的實用工具,類似於「這將需要幾分鐘的時間...」,然後每一個人文件複製操作後加上'打印」 .''或同等學歷,所以用戶在安裝後會看到穩定的「......」。 :) – L0j1k