Upgrading installation files
IzPack installation files try to preserve backwards compatibility as much as possible yet version 5.0 introduced some incompatible changes - mostly for consistency:
Native elements
The <native>
elements must now be contained in a <natives>
wrapping element under 5.0. See the section on Native Libraries.
Avoid using the <natives> element with 4.3
The IzPack installer will silently ignore the <native>
tags contained inside a <natives>
element but does not throw an error when you use your 5.0 installer file with version 4.3.x.
Panel action param elements
This change applies from version 5.0.0-beta11, which is not yet released.
The optional <param>
element in a panel <action>
element now uses name
and value
attributes instead of key
and value
child elements. The following examples illustrate the change between the two versions.
<panel classname="TargetPanel" id="target.win"> <os family="windows" /> <actions> <action stage="preactivate" classname="com.opentext.installer.actions.RegistryReaderAction"> <param> <key>ConfigurationFile</key> <value>RegistryReaderConfiguration.xml</value> </param> </action> </actions> </panel>
<panel classname="TargetPanel" id="target.win"> <os family="windows" /> <actions> <action stage="preactivate" classname="com.opentext.installer.actions.RegistryReaderAction"> <param name="ConfigurationFile" value="RegistryReaderConfiguration.xml"/> </action> </actions> </panel>
See the section on Panel Actions.
Panel configuration param elements
This change applies from version 5.0.0-beta11, which is not yet released.
The optional <configuration>
section in a <panel>
element permits nested <param>
elements. Previously, the <param>
element was specified using child elements <key>
and <value>
. This has now been changed to name
and value
attributes - see Panel action param elements, above, and the Panels section.
LateShortcutInstallListener
LateShortcutInstallListener
may not work at all in earlier 5.0.0 betas.Due to refactoring and improvement to the internal workings of IzPack, LateShortcutInstallListener
is no longer available. Instead, use the new <lateShortcutInstall/>
option in shortcutSpec.xml
. See Shortcut Specification for details.
Default installation directories in TargetPanel.dir.*
IZPACK-798 changed TargetPanel.dir.* etc to be variables, rather than resources.
For example, change the resources to variables:
<res id="TargetPanel.dir.windows" src="@{izpack.dir.app}/installpath.windows.txt"/> <res id="TargetPanel.dir.unix" src="@{izpack.dir.app}/installpath.unix.txt"/>
to
<variable name="Target.dir.windows" value="C:/MyApp"/> <variable name="Target.dir.unix" value="/usr/local/myapp"/>
Upgrading customizations
Prepare to detect some internal refactorings when providing customizations: e.g. the class com.izforge.izpack.util.AbstractUIProcessHandler
can now be found under com.izforge.izpack.api.handler.AbstractUIProcessHandler
As of 5.0.0-beta11 (not yet released), this class has moved again to com.izforge.izpack.panels.process.AbstractUIProcessHandler
.
Using the IzPack Maven Plugin
Release 5.0 of IzPack introduces a new implementation of the izpack-maven-plugin currently found at http://izpack.codehaus.org/izpack-maven-plugin/. In contrast to the documentation there, an explicit dependency to the izpack-standalone-compiler is no longer needed.
Please note that also the configuration parameters and their default values have drastically changed, so in case you want to port your current maven build script you should consult the mojo class from the source tree for the current paramaters until a new Maven Plugin site has been published.