使用InstallAnywhere7.1制作Java exe程序安装包

对于已经完成的Java应用程序开发项目,从商业化角度看,应该制作成安全稳定 的安装程序包来保证产品的安全和企业的利益。现在市面上比较高效的商业化工具有 installshield,installanywhere,install4j等,installshield适合 C,C++,Delphi,PB,VB等;而后两者适合Java应用程序的打包制作。下面主要以InstallAnywhere7.1为例,详细说明如何 来给一个Java应用程序制作安装包。
Java应用程序项目开发测试完成后,企业需要将此打包存档(即jar文件),并制作成商业化安装程序。
 
各版本的JDK都提供jar实用程序,其基本语法如下:
jar <option string> [JAR] [manifest file] [input files]
option string用于指定jar实用程序执行的操作,因此必须指定(下面列出各参数及使用方法)。
c 创建新的或空的压缩档
v
列出目录表
x
解压所有文件
x file
解压指定文件
f
指出“我准备向你提供文件名”。若省略此参数, jar 会假定它的输入来自标准输入;或者在它创建文件时,输出会进入标准输出内
m
指出第一个参数将是用户自建的详情表文件的名字
v
产生详细输出,对 jar 做的工作进行巨细无遗的描述
O
只保存文件;不压缩文件(用于创建一个 JAR 文件,以便我们将其置入自己的类路径中)
M
不自动生成详情表文件 , 大多情况不会用到。
下面是调用 jar 的一些典型方法:
jar cf myJarFile.jar *.class
用于创建一个名为 myJarFile.jar JAR 文件,其中包含了当前目录中的所有类文件,同时还有自动产生的详情表文件。
jar cmf myJarFile.jar myManifestFile.mf *.class
与前例类似,但添加了一个名为 myManifestFile.mf 的用户自建详情表文件。
jar tf myJarFile.jar
生成 myJarFile.jar 内所有文件的一个目录表。
jar tvf myJarFile.jar
添加 “verbose” (详尽)标志,提供与 myJarFile.jar 中的文件有关的、更详细的资料。
jar cvf myApp.jar audio classes image
假定 audio classes image 是子目录,这样便将所有子目录合并到文件 myApp.jar 中。
 
一般来说,在Java应用程序开发的过程中都会用到第三方库文件,在制作安装包 时最好将企业自主开发的和第三方库分离开。因此,在制作成jar文件之前,先写一个mainfest文件(用户自建详情表单文件,后缀名是.mf),在制 作jar文件的过程中用于指出一个使用验证信息说明相关jar文件的文件(即当前项目使用到的第三方jar库文件)。  
使用InstallAnywhere7.1制作Java exe程序安装包_第1张图片
图1  Manifest文件的编写
 
如果使用JBuilder(JBuilder2005)开发Java应用程序项目,可以通过界面来操作生成所需要的jar档案文件:
1.       打开需要制作jar文件的工程;在当前工程下,在Object Gallery中(通过File—)New打开),选择Archive—〉Application;
使用InstallAnywhere7.1制作Java exe程序安装包_第2张图片
               图2  JBuilder2005 Object Gallery

2.       点击OK之后,进入各参数设置界面:
使用InstallAnywhere7.1制作Java exe程序安装包_第3张图片

               图3  JBuilder2005 Archive Builder Step 1

3.       按照提示一步步填写,选择需要打包的文件。


               图4 JBuilder2005 Archive Builder Step 2

4.       在Archive Builder的第三步中,不添加项目相关的第三方jar包,都选择Exclude All(如果使用JBuilder2005制作单个可执行程序,应都选Include All)。
使用InstallAnywhere7.1制作Java exe程序安装包_第4张图片
              图5 JBuilder2005 Archive Builder Step 3

5.       添加先前已经定义好的mainfest文件或在Step4中创建:

              图6 JBuilder2005 Archive Builder Step 4

6.       余下的四个步骤读者可以自己根据Archive Builder的提示进行下去,非常简单,这里就不再多述。
7.       完成之后,再对其进行编译,便可得到相应得jar文件。
                           图7 编译jar文档
 
制作好档案文件(Jar文件)后,打开InstallAnywhere7.1, 新建一个project,进入Advanced Designer(对于比较简单的Java应用程序,可以使用Project Wizard来制作,这里就不作说明,下面的步骤都在Advanced Designer下进行):
图8 InstallAnywhere7.1 Enterprise Edition Advanced Designer

1.    :基本的安装程序信息设置,如信息、描述、文件设置、平台、区域、规则等等。一般都能看懂,并且很容易正确填写。
2.    Project : 定义安装程序的安装界面。如splash screen,background,frameUI等最直观的界面。还可以增加额外的Panel,如License,Password,Serial Number等,这些都在“Installer Panel Addition”和“Install Progress Panel”中定义。还可以定义在安装进行时的闪动画面Billboards;还可以增加安装帮助,给用户提供必要的安装信息。
使用InstallAnywhere7.1制作Java exe程序安装包_第5张图片

                 图9 Advanced Designer Installer UI

Installer UI
3.     定义java应用程序需要安装的组件。可以设置好典型的安装组件(Typical),也可以让用户自定义组件;这些在Install Sets,Features,Components及Modules中设置。
使用InstallAnywhere7.1制作Java exe程序安装包_第6张图片
                 
图10 Advanced Designer Organization
Organization
4.    : 这个模块主要定义安装程序运行时的各个执行动作,如introduction、License Agreement、Serial Number、Choose Folder等。是对Install UI模块中定义的各Panel进行解释和执行,所以这里的panel数量和顺序一定要和Install UI中定义的相一致。
使用InstallAnywhere7.1制作Java exe程序安装包_第7张图片
                  图11 Advanced Designer Pre-Install

Pre-Install
5.    :指定需要打包的文件,在这个模块中定义的路径就是安装程序执行完成后装在本地PC上的程序内部路径。通过Set Classpath和Add Launcher指定程序入口,还可添加快捷方式在程序组中。

                  图12 Advanced Designer Install
Install
6.    :定义程序安装完成后的工作,如添加动态配置、注册表更改及重启计算机等动作,对于更高级的使用还可以对各 Action 进行脚本编写 ,具体的脚本编写规则及变量参数等,可以参考InstallAnywhere帮助文档。
使用InstallAnywhere7.1制作Java exe程序安装包_第8张图片
                 图13   Advanced Designer Post-Install

Post-Install
7.    :类似Pre-Install,定义卸载前的动作,如选择要卸载的模块等。
           使用InstallAnywhere7.1制作Java exe程序安装包_第9张图片                           
                
图14 Advanced Designer Pre-Uninstall

Pre-Uninstall
8.    :类似Post-Install,添加卸载完成后的操作,如重启计算机,添加相关提示等。

                 图15 Advanced Designer Post-Uninstall

Post-Uninstall
9.    :上述的各个模块都已经定义完成之后,可以选择不同的平台,VM版本,需不需要VM,以及跟踪日志,MSI文件生成等。最后,就可以用InstallAnywhere生成我们所需要的安装程序了。

                    图16 Advanced Designer Builder
Build

你可能感兴趣的:(java,jar,exe,JBuilder,installer,archive)