高分求 IZPACK 打包程序教程
RT 高分求 IZPACK 打包程序 教程, 包括如何自定义pannel, 全部pannel 自定义的。。。
------解决方案--------------------
您好 楼主 给你一个事例, 用SVN 把这个项目 check 下来, 看一下 就明白了 SVN 地址http://svn.codehaus.org/izpack-svn/izpack-maven/trunk/izpack-maven-plugin/src/it/sample/
Condition应用与panel控制
IzPack打包工具是通过一个个的panel控制去实现的,在这里我们可以根据安装过程的选择控制panel的选择。如:
<panel classname="UserInputPanel" id="trailPanel" condition="licenseType.trail"/>
<panel classname="UserInputPanel" id="formalPanel" condition="licenseType.formal"/>
当condition="licenseType.trail"时显示 trailPanel,当condition="licenseType.formal"时显示formalPanel.
在这里必须在<conditions></conditions>标签下定义上面的condition.
<!-- define condition -->
<conditions>
<condition id="licenseType.trail" type="variable">
<name>licenseType</name>
<value>trail</value>
</condition>
<condition id="licenseType.formal" type="variable">
<name>licenseType</name>
<value>formal</value>
</condition>
</conditions>
同时定义使用的变量
<!-- define variables -->
<variables>
<variable name="licenseType" value=""/>
</variables>
Processpanel介绍
IzPack允许用户在安装完成后执行自己的文件或.class对系统进行配置。在这里只要在InstallPanel之后使用ProcessPanel即可。例如:
......
<panel classname="InstallPanel"/>
<panel classname="ProcessPanel"/>
<panel classname="ShortcutPanel"/>
.....
同时需要在resources标签下引用指定的资源文件。
......
<res id="ProcessPanel.Spec.xml" src="ProcessPanel.Spec.xml"/>
<res id="shortcutSpec.xml" src="EasyTrack_ShortcutSpec.xml" />
......
在自己ProcessPanel.Spec.xml写编写自己需要的执行的job。
IzPack允许用户执行自己的.class,只需在java文件中包含public void run( AbstractUIProcessHandler handler, String[] args)方法即可。
Jar、native
安装程序在安装过程中可能会需要其它的Java包来完成一些工作,例如,你在自定义向导窗口中做了用户输入的数据库连接有效性检查,如果是通过创建 JDBC连接来做的话,就需要JDBC driver的jar,那么就需要通过<jar />来加入这些jar包。例如:
<!--**安装程序所需要的其它Jar文件夹**-->
<jar src="dbdrivers/mssqlserver.jar" stage="both" />
<jar src="dbdrivers/msutil.jar" stage="both" />
<jar src="dbdrivers/msbase.jar" stage="both" />
<jar src="dbdrivers/ojdbc14.jar" stage="both" />
<jar src="dbdrivers/orai18n.jar" stage="both" />
还有,如果安装程序在安装过程中需要调用native应用的话,例如:安装程序界面中通过Java JNI访问机器硬件的话,就需要JNI的动态库加入到安装程序中。例如:
<!--**安装程序所需要的Native文件**-->
<native type="izpack" name="ShellLink.dll" />
resources
用于为安装界面指定图片或图标
用于指定用户自定义安装向导窗口定义XML文件的位置
用于指定安装向导窗口中国际化资源XML文件的位置
等等,例如:
<!--**安装界面资源定义**-->
<resources>
<!--**XX安装语言选择窗口图片**-->
<res src="langsel.jpg" id="installer.langsel.img" />
<!--**XX安装说明文件**-->
<res src="readme.html" id="HTMLInfoPanel.info" parse="yes" type="plain" encoding="GB2312" />
<res src="readme_chn.html" id="HTMLInfoPanel.info_chn" parse="yes" type="plain" encoding="GB2312" />
<!--**XX产品版本说明文件**-->
<res src="license.html" id="HTMLLicencePanel.licence" parse="yes" type="plain" encoding="GB2312" />
<res src="license_chn.html" id="HTMLLicencePanel.licence_chn" parse="yes" type="plain" encoding="GB2312" />
<!--**快捷键定义描述**-->