izpack和build.properties

时间:2010-11-19 15:11:01

标签: java ant install izpack

有没有人知道如何在ANT中将构建属性传递给izpack。

我在ANT中安装了一个izpack,工作正常,但我必须记得手动输入版本号等等,这些都在我的build.properties文件中。

TIA

3 个答案:

答案 0 :(得分:4)

您可以使用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>
...

Source

答案 1 :(得分:2)

似乎为了将所有项目属性传播到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}

引用该属性

但是,我找不到文档,所以它可能继承的不仅仅是属性。

答案 2 :(得分:0)

我发现了一种方法。我将安装复制到我的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>