2010-11-19 10 views
4

Est-ce que quelqu'un sait comment transmettre les propriétés de construction à izpack dans ANT. J'ai une installation izpack fonctionnelle dans ANT et cela fonctionne bien mais je dois me rappeler de mettre manuellement quelque chose comme le numéro de version etc .. qui sont dans mon fichier build.properties.izpack et build.properties

TIA

Répondre

4

Vous pouvez référencer des propriétés Ant en utilisant la syntaxe @{} dans IzPack installer des définitions:

<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

+0

J'utilise Je ne semble pas en mesure d'utiliser @ {} release.version qui est défini dans build.properties – sproketboy

+0

@ Dan - où voulez-vous coder en dur le numéro de version? Dans votre fichier install.xml? C'est là que vous pouvez vous référer aux propriétés Ant en utilisant la syntaxe @ {} comme dans l'exemple. –

+0

C'est dans le fichier "build.properties". J'ai l'expression $ {release.version} qui fonctionne très bien dans build.xml - la question est comment passer ces valeurs dans install.xml – sproketboy

0

J'ai trouvé un moyen. Je copie l'installation dans mon dossier dist et le remplace à ce moment-là.

<copy file="install.xml" todir="${output.dir}" overwrite="true"> 
    <filterset> 
    <filter token="release.version" value="${release.version}"/> 
    </filterset> 
</copy> 

plus tard:

<target name="installer" description="Build installer" depends="all"> 
    <izpack input="${output.dir}/install.xml" output="c:/temp/test.jar" basedir="${release.dir}"/> 
    </target> 
2

Il semble que dans le but de propager toutes les propriétés du projet au compilateur IzPack vous devez définir l'inheritAll attribut « vrai ».

<izpack input="install-definition.xml" 
    output="${output.dir}/${product.short.name}-${product.version}-install.jar" 
    installerType="standard" 
    inheritAll="true" 
    basedir="${temp.dir}" /> 

ensuite dans votre fichier de définition d'installation référencer la propriété en utilisant @ {} product.version

Cependant, je ne pouvais pas trouver la documentation il peut hériter plus de propriétés.