我可以使用Izpack 5安装文件而不将其作为izpack构建的install.jar的一部分吗? [英] Can I install a file using Izpack 5 without it being part of the install.jar built by izpack
问题描述
我的安装widget.zip zip文件包含以下内容:
My installation widget.zip zipfile contains the following:
- 32bitJava
- install.jar
- widgetinstaller.exe
- widgetinstaller.ini
- widgetinstaller.ico
总结:
- 32bitJava是从Oracle下载的32bit JRE
- install.jar是Izpack创建的安装程序
- widgetinstaller.*是由winrun4j创建的,为安装程序提供了exe包装程序.
因此,使用此设置,我可以安装应用程序,而无需用户已经安装Java运行时.
So with this setup I can install my application without user having to have a java runtime already installed.
但是一旦安装,实际的应用程序还需要一个Java运行时才能实际运行.因此,目前izpack安装中包含32bitJava副本,即它存在于install.jar中,并在安装时安装.
However once installed the actual application also needs a java runtime to actually run. So at the moment a copy of 32bitJava is included as part of the izpack install, i.e it exists in install.jar and is installed at installation time.
但这意味着我有两个JVM副本,并且因为32bitJava大于我的实际应用程序,因此下载量太大.
But this means I have two copies of the JVM, and because the 32bitJava is larger than my actual application makes my download much too large.
那么我如何在安装过程中/安装后将32bitJava文件夹复制到安装中,而不必将其包含在install.jar中?
So how can I copy the 32bitJava folder into the installation during/after installation instead of having to include it in install.jar ?
推荐答案
您要为JVM做一个松散"的包装.一个松散的包不需要包含它安装的文件,因此它可以将文件从zip复制到适当的位置,而不用在jar中嵌入一个.
You want to do a "loose" pack for the JVM. A loose pack doesn't need to contain the files it installs, so it could copy the file from the zip into place, instead of using one embedded in the jar.
<pack id="java" name="java" required="yes" preselected="yes" loose="true">
...
<executable ...>
<!-- something appropriate to install java -->
</executable>
</pack>
这篇关于我可以使用Izpack 5安装文件而不将其作为izpack构建的install.jar的一部分吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!