...
In the <os name> form, the os name is has been one of:
- System.getProperty("os.name").replace(' ', '_')
- "windows"
- "mac"
- "unix"
For 4.3.6, IZPACK-798 changed the above to use variables instead of text files, following the same naming convention.
For 5.0 a better approach would be to use Platform to determine the appropriate variable (see IZPACK-829).
The variable could be derived from:
...
)
...
.
...
...
If no variable is specified for the current platform, it would use TargetPanel.dir.
For example, change the resources to variables:
Code Block | ||||
---|---|---|---|---|
| ||||
<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
Code Block | ||||
---|---|---|---|---|
| ||||
<variable name="TargetPanel.dir.windows" value="C:/MyApp"/>
<variable name="TargetPanel.dir.unix" value="/usr/local/myapp"/> |
This uses the following variable search order to determine the default directory to display:
- TargetPanel.dir.<platform symbolic name> e.g. TargetPanel.dir.windows_7
- TargetPanel.dir.<platform name> e.g. TargetPanel.dir.windows
- TargetPanel.dir.<parent platform> e.g. given platform "FEDORA_LINUX" looks for TargetPanel.dir.linux, followed by TargetPanel.dir.unix
- TargetPanel.dir
- DEFAULT_INSTALL_PATH
- SYSTEM_user_dir corresponds to the system property "user.dir"
Available platforms can be found in the class Platforms. The names are the lowercase versions of those defined.
Allowed names include:
- aix
- debian_linux
- fedora_linux
- freebsd
- hp_ux
- linux
- mac
- mac_osx
- mandrake_linux
- mandriva_linux
- os_2
- red_hat_linux
- sunos
- sunos_x86
- sunos_sparc
- suse_linux
- unix
- ubuntu_linux
- windows
- windows_7
- windows_xp
- windows_2003
- windows_vista
Differences from 4.3.5
In 4.3.5, resources were used rather than variables. Resources were searched for with the following names
- "TargetPanel.dir." + lower case version of System.getProperty("os.name"), with any spaces replace with underscores
- "TargetPanel.dir." + <platform> where platform is one of ("windows", "macosx", "unix")
- "TargetPanel.dir"
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
...
For a more details, see Setting Default Installation Directories.
Using the IzPack Maven Plugin
...