版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
制作Java安装程序ANTWindows,MacOSX,Unix平台上可执行的文件,比方exe,zip,jar。ROXESANTTasksGPL公布。“://roxes/produkte/rat.html“://roxes/produkte/rat.html企业开源参考架构JavaWeb应用产品安装程序制作方案名目:一.背景二.开源工具三.环境预备四.技术预备JsmoothJsmooth简介工作原理IzPack简介4.2.2.工作原理五.方案实例六.完毕一.背景:随着Java在应用产品开发中的广泛应用,基于Java的应用产品也就越来越多,那么如何为基于Java的应用产品制作安装程序的需求就产生了。以前人们一般都是使用InstallShield与InstallAnyWhere进展产品安装程序的制作,这是两个功能格外强大、易用的安装盘制作工具,尤其是InstallAnyWhere,它还支持Java应用产品安装制作,例如:大名鼎鼎的Jbuilder安装程序就是由它制作的。来进展JavaWeb应用产品程序制作进展一些探讨。二.开源工具:目前用于支持Java应用安装程序制作的开源工具格外丰富,本人将要本人在争论过程中所遇到的排列一二以供参考:PackletPacklet是一个简洁的Java安装制作工具。它将JavaApplication打包成一个可以公布的类似于zip或tgz的压缩文件中。这个压缩文件被简为packlet,它可以在安装有Java2RuntimeEnvironment的操作系统上执行.通过执行packlet将会给用户供给一个图形化的安装配置界面并解压应用。GoToPackletIzPackIzPack是一个用于Java平台的安装程序生成器。它用于产生一个轻量级、能运行于全部安通过java–jarinstall.jarIzPack的主要好处就是能够生成运行于任意操作系统的安装程序。GoToIzPackJSmoothJsmooth可以将Java可执行应用Wrapper成window可执行Exe程序。通过Jsmooth生成的Exe程序会自动按制作时定义的挨次查找适宜的JVM,假设能不查找到JVM,安装程序会提示用户并能依据定义好的URL启动WebBrowser让用户下载JVM.留意:Jsmooth并不是纯Java应用。GoToJSmoothVAInstallVAInsall是一个用Java写的多平台安装程序工具。它是基于GNUGPL2.0许可。通过一个简VAInstall生成的安装程序允许先择不同的安装模式(graphic,text或ansi)。GoToVAInstallJavaServiceWrapper用于将JavaApplication安装成为WindowNTService.同时与之附带的scripts能够很简洁将JavaApplication安装成为UNIX的后台进程。GoToJavaServiceWrapperLiftOffJavaInstallerLiftOffJavaInstallerclassGoToLiftOffJavaInstallerToolshed一个小巧、简洁、纯Java实现的安装程序制作工作。Launch4JLauch4J也是一个Java应用WindowExe封装工具。通过Lauch4J,可以供给splashscreen,图标,自动查询JRE或内置JRE等功能,同时还支持启动失败反响以及命令行参数。GoToLaunch4JAntInstallerAntInstaller是一个安装程序框架,它利用一个简洁的XML定义安装界面,并以Ant执行安装AntInstaller的安装程序可以打包成自解压jar通过commandline执行可SwingGUI来执行。GoToAntInstallerAntigenAntigen----即AntInstallerGenerator。它主要的目的就是依据Ant脚本创立图形化安装程序。GoToAntigenFreeInstaller用。通过FreeInstaller可以将Java或非Java的应用安装到UNIX,LINUX以及windowNT系统中。GoToFreeInstallerMiniInstaller一个简洁的Java安装程序制作工具。整个制作过程是通过脚本完成的,最终生成一个可以通过双击方式执行的jar文件。GoToMiniInstaller通过对如上各产品的初步探究,本人最终选择了利用izpack+jsmooth作为JavaWeb应用产已工程的需求(本人负责公司一企业应用开发平台的研发工作)及本人的偏好作出的选择。式,本文只是供给一个解决方法,关于如何与自已的框架或平台进展有效的整合,请读者自行考虑。三.环境预备:你需要安装J2SDK1.4.1+版本;关于J2SDK请由Sun公司下载;你需要安装Ant1.6.2版本,理论上其它版本也行,只是本人用的是1.6.2;请下载并安装izpack;设定定装到IZPACK_HOME请下载并安装jsmooth;设定安装到JSMOOTH_HOME为了便于理解,你需要对Java进展应用的开发有肯定的根底,本例将以Web应用的安装程序制作为背景进展相关介绍,所以需要你对Web应用开发以及其公布方式有肯定的根底;另外,本方案将会以Ant作为应用build的工具,所以你需要有肯定的Ant技术;对于如上相关学问本局部不预备介绍。下面本局部将主要对izpack及jsmooth进展简洁的介绍。jsmooth:Jsmooth简介:Jsmooth,一个Java可执行应用封装器(Wrapper),马上Java可执行应用程序(即可执行jar)封装为Window可执行文件 exe文件的工具。通过Jsmooth将可执行jar封装为ExeJavaWindow应用程序一样,重用用户阅历。Jsmooth对jar进展封装时可以设定classpath,JVM参数,命令行参数,JVM版本及位置,这样用户在执行exe时不用关心JVM,Classpath等问题,这样就简化了Java应用执行。工作原理:通过Jsmooth生成的WindowEx文件通常定义为“JsmoothApplicatio要想生成JsmoothApplication,我们需要一个JsmoothGen工程文件-----.jsmooth文件,后面我们将其称为“.jsmooth.jsmooth文件实际上是一个xm文件,用于描述/定义JsmoothApplication的相关属性,例如:classpath,JVM,Javamain方法类,以及其它与JavaJsmoothJsmoothGen.exe--------WindowsProjectEditor来创立和编辑这个文件,这个Editor如以下图所示:(图-1)WidnowProjectEditor(图-2)WidnowProjectEditor(图-3)WidnowProjectEditor在.jsmooth文件生成之后,就可以通过如下方式生成目标JsmoothApplication,即Exe文件:。WindowProjectEditor:你可以直接在如上图所示的编辑器通过工具条来生成:ProjectàCreateExe。。CommandLine:你也可以进入。jsmooth文件所以名目,通过如下命令来生成目标Exe文件:„„„>%jsmooth_home%“jsmoothcmd.exeyourproject.jsmooth。通过Ant任务调用生成目标Exe:首先你需要在你的build文件中参加jsmoothAnt任务定义:<>classname=“net.charabia.jsmoothgen.ant.JSmoothGen“classpath=“${jsmooth_home}/lib/jsmoothgen-ant.jar“/>然后,通过jsmoothgen任务来执行生成Exe的工作:skeletonroot=”${jsmooth_home}/skeletons”/>所以通过Jsmooth我们可以很简洁将JavaApplication制作WindowsExe应用。关于Jsmooth的具体介绍请参考“:///“://izpack:izpack简介:izpack是基于ApacheSoftwareLicense2.0许可的开源工程;izpack是纯Java,对局部特性有针对不同平台版本的Library。例如:快捷键的创立。izpack是一个用于解决安装程序制作的Builder工具;通过izpack制作的安装程序可以运行于不同的操作系统,Windows,Linux,Unix等,只要安装了JDK1.4以及其后版本即可;izpack优秀的模块化设计可以允许你定制安装程序外观、安装过程等;同时允许你通过其供给API调整izpack安装过程。izpack的主要功能包括(但不限于):XMLbasedinstallationfileseasyinternationalizationusingXMLfiles(10translationsarealreadyavailable)Antintegration,command-linecompilereasycustomizationwiththepanelsandarichAPI(evenanXMLparserisincluded!)powerfulvariablesubstitutionsystemthatyoucanusetocustomizescriptsandmoregenerallyanytext-basedfiledifferentkindsofinstallers(standard,web-based,...)launchingofexternalexecutablesduringtheinstallationprocessandUnixexecutableflagsupport(usefulforthescriptsforinstance)layoutoftheinstallationfilesinpacks(somecanbeoptional)nativecodeintegrationfacilitiesjarfilesnestingsupport...morethingstodiscoverandcreate!.(图-4)IzPack制作的安装界面例如-选择安装的Pack.原理及过程第一步:创立并描述安装定义文件;其次步:通过izpack供给CommandLine工具或AntTask对安装定义文件进展编译,编译的结果即是生成一个可执行的jar文件,其中包括了整个安装过程的实现以及安装数据;安装定义文件:安装过程定义文件是一个XML文件,installation是根元素,表示定义的开头。定义主要由如下几局部组成:1.„.用于定义安装程序的根本信息;产品中文名称产品版本号,例如:1.0-062312公司网址JDK版本号:1.4.22.„„用于定义安装程序界面信息,例如:3.„„..定义变量或配置信息,变量在整个安装制作的过程中格外重要,变量两种用途:其一:作为配置用,例如可以通过依据肯定的命名称规章为某个变量设定一个值,izpack在执行安装过compareToVariable.、compareToOperator.与compareToValue.的组合打算第个用户自定义的向导窗口在安装时是否可见,这样就可以通过上个窗口用户选择来打算下个窗口是否可见;其二:作为替换变量用,通常安装过程中收集的信息存放在变量中,然后,在安装程序进展到最终,利用变量的值来替换安装目标文件中的内容。4.„.打算,安装程序界面所支持的语言。5.„„..用于为安装界面指定图片或图标用于指定用户自定义安装向导窗口定义XML文件的位置用于指定安装向导窗口中国际化资源XML文件的位置等等,例如:<resources><ressrc=“langsel.jpg“id=“installer.langsel.img“/><res src=“readme.html“encoding=“GB2312“/>
id=“HTMLInfoP“ parse=“yes“ type=“plain“<res src=“readme_chn.html“ id=“HTMLInfoP_chn“ parse=“yes“ type=“plain“encoding=“GB2312“/><res src=“license.html“ id=“HTMLLicencePanel.licence“ parse=“yes“ type=“plain“encoding=“GB2312“/><res src=“license_chn.html“ id=“HTMLLicencePanel.licence_chn“type=“plain“encoding=“GB2312“/>
parse=“yes“<res src=“shortcutSpec.xml“encoding=“GB2312“/>
id=“shortcutSpec.xml“ parse=“yes“
type=“xml“<res src=“Unix_shortcutSpec.xml“id=“Unix_shortcutSpec.xml“parse=“yes“ type=“xml“encoding=“GB2312“/><ressrc=“packsLang.xml“id=“packsLang.xml“/><ressrc=“packsLang_chn.xml“id=“packsLang.xml_chn“/><ressrc=“UserInputSpec.xml“id=“userInputSpec.xml“/><ressrc=“UserInputLang.xml“id=“userInputLang.xml“/><ressrc=“UserInputLang_chn.xml“id=“userInputLang.xml_chn“/>resources>6.„„.本局部用于定义整个安装过程,每个panel即是一个安装向导窗口,panel是按挨次由IzPack调用的。IzPack内置了很多的PanelUserInputPanelID为UserInputSpec.xml的资源(XML)中定义UserInputPanel窗口中用户录入工程及相关存放的变量。另外,Izpack支持条件用户自定义Panel,即ConditionalUserInputPanel你可以在„.中通过变量来掌握这样的向导窗口的可见性。当安装过程执行到InstallPanel时IzPack开头解压安装包到硬盘中,所以,一般来说全部的配置信息(例如,安装名目,安装包的选择等)都应在InstallPanel之前完成。在InstallPanel之后可以通过ShortcutPanel来显示快捷方式创立窗口,另外还可以通过ProcessPanel来执行一些后续操作。<panels><panelclassname=“HTMLLicencePanel“/><panelclassname=“HTMLInfoPanel“/><panelclassname=“TargetPanel“/><panelclassname=“PacksPanel“/><panelclassname=“UserInputPanel“/><panelclassname=“SummaryPanel“/><panelclassname=“InstallPanel“/><panelclassname=“ShortcutPanel“/><panelclassname=“SimpleFinishPanel“/>panels>7.„„.本局部主要用于定义安装包,马上哪些文件进展打包,以及将来安装时如何进展安装。通过可以将应用程序文件分解成不同的安装包,可以指定哪些pack是必需安装的,哪些是可选的。定义pack时,就可以指定哪些文件在安装时需要进展解析(parseable)。需要留意的,你需要指定需要解析的方式(xml,javaprop,plain,shell),如查将javaprop类型的文件解析类型设定为plain的话,可以就有问题,例如:假设变量的值为路径,那么在可能就会有问题。另,对于每一个Pack在它安装(copy文件)之后,可以定义它执行一个程序,例如脚本程序。你可以利用这种功能来做一些工作,例如:你可执行脚本程序来导入数据库数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农场土地租赁合同:农业节水灌溉
- 绿色建筑工程施工合同
- 管道工程人工费施工合同
- 2025常用基本建设贷款合同完整样书
- 校园电商平台推介模板
- 现代哲学教学课件模板
- 如何保护个人电子支付账号的安全
- 山东职业学院《电声乐器实验》2023-2024学年第一学期期末试卷
- 山东政法学院《公共卫生应急》2023-2024学年第一学期期末试卷
- 保洁服务中介合同范例
- 私人财富管理与资产配置课件
- 广东汕头高二地理(文科班)期中试卷
- JC∕T 2647-2021 预拌混凝土生产企业废水回收利用规范
- 五年级《列那狐的故事》知识考试题库(含答案)
- 售前、售中、售后服务流程图
- 湖南省乡镇卫生院街道社区卫生服务中心地址医疗机构名单目录
- 板坯连铸机板坯连铸机液压系统系统课件
- 传感器与测试技术论文
- 试油服务安全环保技术措施
- 小学道德与法治《我们的好朋友》课件完整版
- 电力工程施工进度计划和保证工期的措施
评论
0/150
提交评论