Java 應(yīng)用程序 安裝程序 制作工具 InstallAnywhere (轉(zhuǎn))
Posted on 2007-01-08 10:56 duyouyou.com 閱讀(2370) 評(píng)論(0) 編輯 收藏 所屬分類(lèi): Swing技術(shù)本文轉(zhuǎn)自:http://www.tongyi.net/develop/Java/1026883.html
應(yīng)用的便攜性對(duì)于產(chǎn)品而言很重要。從外觀(guān)看,如果開(kāi)發(fā)好的應(yīng)用能夠打包,通過(guò)安裝程序指導(dǎo)用戶(hù)對(duì)開(kāi)發(fā)產(chǎn)品的安裝和配置,將大大提升應(yīng)用客戶(hù)的認(rèn)同感。從公司本身看,如果能夠較好的貫徹這種思想,無(wú)非對(duì)于實(shí)施產(chǎn)品化行為奠定一個(gè)良好的基礎(chǔ)。大家試想,這樣兩方面將使得產(chǎn)品的部署更加快捷、有效。其中最為重要的一點(diǎn)就是,很多的產(chǎn)品經(jīng)驗(yàn)都能夠較好地得到積累和沉淀。
一,????工具概述
InstallAnywhere?由Zero?G公司(http://www.zerog.com?)開(kāi)發(fā)。Zero?G公司在多平臺(tái)軟件部署和維護(hù)領(lǐng)域是佼佼者。其代表產(chǎn)品有InstallAnywhere和PowerUpdate。其使用的簡(jiǎn)單、高效,并在提供跨平臺(tái)支持的同時(shí)支持29種語(yǔ)言(包括簡(jiǎn)體中文)贏(yíng)得了很多客戶(hù)的青睞。其主界面如圖1所示。
?
圖1 主界面
用戶(hù)安裝完InstallAnywhere?后,可以通過(guò)啟動(dòng)菜單,或者主界面左下角的“Show?Help”按鈕找到“InstallAnywhere?5.5?Enterprise?User?Guide”,如圖2所示。
?
?
圖2 InstallAnywhere提供的用戶(hù)指南
????因?yàn)镮nstallAnywhere涉及的面也很廣(其功能強(qiáng)大、上手簡(jiǎn)單),在這里主要是結(jié)合本人在參與使用InstallAnywhere開(kāi)發(fā)安裝程序過(guò)程中遇到的一些問(wèn)題、解決辦法以及相關(guān)開(kāi)發(fā)技巧和大家分享(主要面對(duì)初學(xué)者,或者說(shuō)沒(méi)有使用過(guò)InstallAnywhere的新手)。具體的各個(gè)細(xì)節(jié)還望各位參考InstallAnywhere提供的用戶(hù)指南。
二,????非Java應(yīng)用的部署
由于基于InstallAnywhere的安裝程序需要JVM的支持。因此,如果目標(biāo)部署環(huán)境沒(méi)有提供JVM,則對(duì)于非Java應(yīng)用的部署安裝程序制作需要自己提供JVM,如圖3所示。
??
圖3?安裝程序Bundle?VM(選中“With?VM”對(duì)應(yīng)的復(fù)選框)
????其他的步驟和Java應(yīng)用的部署差不多。本文這里將Java應(yīng)用分為兩種,J2SE應(yīng)用和J2EE應(yīng)用。主要是因?yàn)镴2EE應(yīng)用還會(huì)涉及到應(yīng)用服務(wù)器,其安裝制作會(huì)比較復(fù)雜。
三,????J2SE應(yīng)用的部署
如果程序本身是基于J2SE的應(yīng)用,則我們可以考慮將InstallAnywhere提供的JVM就作為J2SE應(yīng)用運(yùn)行所需的JVM。這其中有一點(diǎn)需要讀者注意,即JVM的安裝文件夾位置和名稱(chēng)。通過(guò)圖4可以訂制您的特定需求。
??
圖4?定制JVM的安裝位置和名稱(chēng)
四,????J2EE應(yīng)用的部署
對(duì)于J2EE應(yīng)用的安裝部署就會(huì)比較復(fù)雜。其中,涉及到與JVM、數(shù)據(jù)庫(kù)系統(tǒng)、J2EE應(yīng)用服務(wù)器以及J2EE應(yīng)用本身的交互。
這一部分內(nèi)容,我后面會(huì)分專(zhuān)題具體給出闡述,因?yàn)閮?nèi)容比較多。
五,????使用Tips
5.1?JVM的選用
為了提供中文的安裝向?qū)В琁nstallAnywhere默認(rèn)提供的VM并沒(méi)有提供國(guó)際化支持,比如中文支持,這種情況下開(kāi)發(fā)者必須去:http://www.zerog.com/downloads_02c.html 下載提供國(guó)際化支持的VM,或者自己制作(具體細(xì)節(jié),請(qǐng)參考InstallAnywhere?5.5.?Enterprise?User?Guide)。
??
圖5?InstallAnywhere安裝的VM?Packs
5.2?Customer?Code的開(kāi)發(fā)
很多時(shí)候,我們需要開(kāi)發(fā)自己的向?qū)姘濉>唧w步驟如下:
第一,選擇一個(gè)開(kāi)發(fā)工具,比如JBuilder、Eclipse、JCreator等等。
第二,將IAClasses.zip加到classpath中。
第三,如果還使用到其他的class?lib,也根據(jù)步驟2加入到classpath中。
第四,開(kāi)發(fā)具體的Customer?Code。
第五,借助于InstallAnywhere將自己開(kāi)發(fā)的Customer?Code加入到目標(biāo)工程中,編譯、測(cè)試Customer?Code。
5.3?調(diào)試信息的輸出
在使用InstallAnywhere過(guò)程中,如果需要查看安裝程序做了哪些工作,比如,加載了哪些類(lèi)、使用的JVM的版本和位置、調(diào)試信息以及錯(cuò)誤信息等內(nèi)容。在這種情況下,就需要借助于InstallAnywhere提供的功能。如圖6所示,開(kāi)發(fā)者可以將調(diào)試信息輸出到文件或者控制臺(tái)。比如,將錯(cuò)誤信息和其他調(diào)試信息輸出到控制臺(tái),只需要填入“console”。
??
圖6?調(diào)試信息的輸出
這樣一來(lái),在安裝編譯好的安裝程序后,將同時(shí)彈出一個(gè)控制臺(tái),供用戶(hù)查看安裝日志。如果安裝日志很多,可以調(diào)整控制臺(tái)的“屏幕緩沖區(qū)大小”,比如調(diào)整圖7中屏幕緩沖區(qū)大小的高度(最大可以為,5999),這樣使得先前的日志信息不至于被沖掉。
??
圖7?調(diào)整屏幕緩沖區(qū)大小
5.4?中文亂碼的處理
由于InstallAnywhere處理本地化方面不是很完善。有時(shí)候,開(kāi)發(fā)人員的誤操作不小心引入很多中文亂碼。在這種情況下,需要調(diào)整本地文件,比如處理中文的“custom_zh_CN”文件。具體辦法如下:
首先,關(guān)掉InstallAnywhere,然后找到“custom_zh_CN”文件。
其次,然找到亂碼位置。
第三,借助于InstallAnywhere或者其他工具,將相應(yīng)的中文Unicode替換原來(lái)的亂碼。
最后,重新打開(kāi)InstallAnywhere,編譯、安裝打包程序,看看是否正常。
其中,在這些過(guò)程中有時(shí)候需要手工調(diào)整“custom_zh_CN”文件中一些內(nèi)容的順序,這種情況下,一定要保證“custom_en”和“custom_zh_CN”文件所含的英文項(xiàng)一致。
六,????結(jié)論
通過(guò)本文內(nèi)容,您對(duì)InstallAnywhere應(yīng)該有了一些了解。使用InstallAnywhere幾乎可以完成任何支持JVM的安裝程序。從非JAVA應(yīng)用、J2SE應(yīng)用到J2EE應(yīng)用的安裝制作都可以很好的完成。這其中,在很大程度上都是借助了Java的跨平臺(tái)優(yōu)勢(shì)才得以實(shí)現(xiàn)。
一,????工具概述
InstallAnywhere?由Zero?G公司(http://www.zerog.com?)開(kāi)發(fā)。Zero?G公司在多平臺(tái)軟件部署和維護(hù)領(lǐng)域是佼佼者。其代表產(chǎn)品有InstallAnywhere和PowerUpdate。其使用的簡(jiǎn)單、高效,并在提供跨平臺(tái)支持的同時(shí)支持29種語(yǔ)言(包括簡(jiǎn)體中文)贏(yíng)得了很多客戶(hù)的青睞。其主界面如圖1所示。
?

圖1 主界面
用戶(hù)安裝完InstallAnywhere?后,可以通過(guò)啟動(dòng)菜單,或者主界面左下角的“Show?Help”按鈕找到“InstallAnywhere?5.5?Enterprise?User?Guide”,如圖2所示。
?

圖2 InstallAnywhere提供的用戶(hù)指南
????因?yàn)镮nstallAnywhere涉及的面也很廣(其功能強(qiáng)大、上手簡(jiǎn)單),在這里主要是結(jié)合本人在參與使用InstallAnywhere開(kāi)發(fā)安裝程序過(guò)程中遇到的一些問(wèn)題、解決辦法以及相關(guān)開(kāi)發(fā)技巧和大家分享(主要面對(duì)初學(xué)者,或者說(shuō)沒(méi)有使用過(guò)InstallAnywhere的新手)。具體的各個(gè)細(xì)節(jié)還望各位參考InstallAnywhere提供的用戶(hù)指南。
二,????非Java應(yīng)用的部署
由于基于InstallAnywhere的安裝程序需要JVM的支持。因此,如果目標(biāo)部署環(huán)境沒(méi)有提供JVM,則對(duì)于非Java應(yīng)用的部署安裝程序制作需要自己提供JVM,如圖3所示。
??

圖3?安裝程序Bundle?VM(選中“With?VM”對(duì)應(yīng)的復(fù)選框)
????其他的步驟和Java應(yīng)用的部署差不多。本文這里將Java應(yīng)用分為兩種,J2SE應(yīng)用和J2EE應(yīng)用。主要是因?yàn)镴2EE應(yīng)用還會(huì)涉及到應(yīng)用服務(wù)器,其安裝制作會(huì)比較復(fù)雜。
三,????J2SE應(yīng)用的部署
如果程序本身是基于J2SE的應(yīng)用,則我們可以考慮將InstallAnywhere提供的JVM就作為J2SE應(yīng)用運(yùn)行所需的JVM。這其中有一點(diǎn)需要讀者注意,即JVM的安裝文件夾位置和名稱(chēng)。通過(guò)圖4可以訂制您的特定需求。
??

圖4?定制JVM的安裝位置和名稱(chēng)
四,????J2EE應(yīng)用的部署
對(duì)于J2EE應(yīng)用的安裝部署就會(huì)比較復(fù)雜。其中,涉及到與JVM、數(shù)據(jù)庫(kù)系統(tǒng)、J2EE應(yīng)用服務(wù)器以及J2EE應(yīng)用本身的交互。
這一部分內(nèi)容,我后面會(huì)分專(zhuān)題具體給出闡述,因?yàn)閮?nèi)容比較多。
五,????使用Tips
5.1?JVM的選用
為了提供中文的安裝向?qū)В琁nstallAnywhere默認(rèn)提供的VM并沒(méi)有提供國(guó)際化支持,比如中文支持,這種情況下開(kāi)發(fā)者必須去:http://www.zerog.com/downloads_02c.html 下載提供國(guó)際化支持的VM,或者自己制作(具體細(xì)節(jié),請(qǐng)參考InstallAnywhere?5.5.?Enterprise?User?Guide)。
??

圖5?InstallAnywhere安裝的VM?Packs
5.2?Customer?Code的開(kāi)發(fā)
很多時(shí)候,我們需要開(kāi)發(fā)自己的向?qū)姘濉>唧w步驟如下:
第一,選擇一個(gè)開(kāi)發(fā)工具,比如JBuilder、Eclipse、JCreator等等。
第二,將IAClasses.zip加到classpath中。
第三,如果還使用到其他的class?lib,也根據(jù)步驟2加入到classpath中。
第四,開(kāi)發(fā)具體的Customer?Code。
第五,借助于InstallAnywhere將自己開(kāi)發(fā)的Customer?Code加入到目標(biāo)工程中,編譯、測(cè)試Customer?Code。
5.3?調(diào)試信息的輸出
在使用InstallAnywhere過(guò)程中,如果需要查看安裝程序做了哪些工作,比如,加載了哪些類(lèi)、使用的JVM的版本和位置、調(diào)試信息以及錯(cuò)誤信息等內(nèi)容。在這種情況下,就需要借助于InstallAnywhere提供的功能。如圖6所示,開(kāi)發(fā)者可以將調(diào)試信息輸出到文件或者控制臺(tái)。比如,將錯(cuò)誤信息和其他調(diào)試信息輸出到控制臺(tái),只需要填入“console”。
??

圖6?調(diào)試信息的輸出
這樣一來(lái),在安裝編譯好的安裝程序后,將同時(shí)彈出一個(gè)控制臺(tái),供用戶(hù)查看安裝日志。如果安裝日志很多,可以調(diào)整控制臺(tái)的“屏幕緩沖區(qū)大小”,比如調(diào)整圖7中屏幕緩沖區(qū)大小的高度(最大可以為,5999),這樣使得先前的日志信息不至于被沖掉。
??

圖7?調(diào)整屏幕緩沖區(qū)大小
5.4?中文亂碼的處理
由于InstallAnywhere處理本地化方面不是很完善。有時(shí)候,開(kāi)發(fā)人員的誤操作不小心引入很多中文亂碼。在這種情況下,需要調(diào)整本地文件,比如處理中文的“custom_zh_CN”文件。具體辦法如下:
首先,關(guān)掉InstallAnywhere,然后找到“custom_zh_CN”文件。
其次,然找到亂碼位置。
第三,借助于InstallAnywhere或者其他工具,將相應(yīng)的中文Unicode替換原來(lái)的亂碼。
最后,重新打開(kāi)InstallAnywhere,編譯、安裝打包程序,看看是否正常。
其中,在這些過(guò)程中有時(shí)候需要手工調(diào)整“custom_zh_CN”文件中一些內(nèi)容的順序,這種情況下,一定要保證“custom_en”和“custom_zh_CN”文件所含的英文項(xiàng)一致。
六,????結(jié)論
通過(guò)本文內(nèi)容,您對(duì)InstallAnywhere應(yīng)該有了一些了解。使用InstallAnywhere幾乎可以完成任何支持JVM的安裝程序。從非JAVA應(yīng)用、J2SE應(yīng)用到J2EE應(yīng)用的安裝制作都可以很好的完成。這其中,在很大程度上都是借助了Java的跨平臺(tái)優(yōu)勢(shì)才得以實(shí)現(xiàn)。