有谁知道如何在 ANT 中将构建属性传递给 izpack。
我在 ANT 中有一个可用的 izpack 安装,它工作正常,但我必须记住手动输入版本号等内容,这些内容位于我的 build.properties 文件中。
TIA
有谁知道如何在 ANT 中将构建属性传递给 izpack。
我在 ANT 中有一个可用的 izpack 安装,它工作正常,但我必须记住手动输入版本号等内容,这些内容位于我的 build.properties 文件中。
TIA
@{}
您可以使用IzPack 安装定义中的语法来引用 Ant 属性:
<installation version="1.0">
<!-- Ant properties in this file can be referenced with @{},
otherwise use variables below in installer files with ${} -->
<info>
<appname>@{product.name}</appname>
<appversion>@{product.version}</appversion>
<uninstaller name="remove.task" path="${INSTALL_PATH}/Uninstall" write="yes"/>
</info>
...
似乎为了将所有项目属性传播到 izpack 编译器,您需要将inheritAll属性设置为“ true ”。
<izpack input="install-definition.xml"
output="${output.dir}/${product.short.name}-${product.version}-install.jar"
installerType="standard"
inheritAll="true"
basedir="${temp.dir}" />
然后在您的安装定义文件中使用 @{product.version} 引用该属性
但是,我在文档中找不到它,因此它可能继承的不仅仅是属性。
我找到了一个方法。我将安装复制到我的 dist 文件夹并在那时替换。
<copy file="install.xml" todir="${output.dir}" overwrite="true">
<filterset>
<filter token="release.version" value="${release.version}"/>
</filterset>
</copy>
稍后的:
<target name="installer" description="Build installer" depends="all">
<izpack input="${output.dir}/install.xml" output="c:/temp/test.jar" basedir="${release.dir}"/>
</target>