We need you!

Icon

The IzPack documentation needs work, and you are invited to edit it!

Skip to end of metadata
Go to start of metadata

Compile-time Properties - <properties>

Understanding Properties

IzPack properties are key-value pairs that can be used for substitution during the compilation phase, only. The scope makes the difference to variables, which are evaluated and can be seen also during the installation phase. IzPack properties will not be visible during the execution of the compiled installer.

Properties cannot be re-defined and once a property is created, it will not be overwritten.

Using Properties

Properties can be explicitely set in the installer descriptor. Additionally, IzPack sets built-in properties depending on how the compilation is launched

Setting Properties

Explicit Properties

Explicit properties can be defined by the user using the <properties> element as a child of the <installation> element.

Example:

install.xml

Maven Properties

When launching the compilation using the IzPack Maven plugin, all Maven project properties are available as properties in IzPack.

Maven properties have priority over explicit properties, since they are set during instantiation of the IzPack compiler, before the IzPack compilation starts so they can not be replaced by later specifications from the <properties> element.

This behavior of defining implicit properties is similar to setting implicit Ant project properties in IzPack 4.X.

Example:

POM

Reading/Substituting Properties

IzPack properties can be referenced in the installation specification by a leading 'at' placeholder followed by the property name (for example @my.prop.name).

Optionally, when embedding property substitution into text which continues without a whitespace character, the key can be embedded in braces opening after the 'at' (for example @{my.prop.name}).

IzPack properties are substituted when their definition is found in the installation descriptor XML inside of

  • element attribute values,
  • embedded (enclosed) content.

Example:

 

install.xml
  • No labels