明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

創(chuàng)建 Java .exe 文件

[摘要]需要?jiǎng)?chuàng)建 Java .exe 文件嗎?Builder 澳大利亞的 Java 專家 Michael Geisler 在本文中分析了開(kāi)發(fā)人員可以使用的幾種方法。問(wèn)題您好,Michael:我需要為我的應(yīng)用程序創(chuàng)建一個(gè) Java .exe文件。創(chuàng)建 Java .exe 文件都需要哪些步驟?有沒(méi)有什么工具能...
需要?jiǎng)?chuàng)建 Java .exe 文件嗎?Builder 澳大利亞的 Java 專家 Michael Geisler 在本文中分析了開(kāi)發(fā)人員可以使用的幾種方法。

問(wèn)題
您好,Michael:
我需要為我的應(yīng)用程序創(chuàng)建一個(gè) Java .exe文件。創(chuàng)建 Java .exe 文件都需要哪些步驟?有沒(méi)有什么工具能夠幫助我自動(dòng)地創(chuàng)建 Java .exe 文件?

回答
Sun 提供的標(biāo)準(zhǔn) Java 開(kāi)發(fā)包(JDK)沒(méi)有提供創(chuàng)建特定于平臺(tái)的可執(zhí)行文件的工具(一點(diǎn)都不吃驚,這是真的)。然而,其實(shí)有很多方法能夠幫助你實(shí)現(xiàn)這一想法。

第三方工具
一種方法是使用第三方商業(yè)工具或免費(fèi)工具將 Java 應(yīng)用程序打包為一個(gè)可執(zhí)行文件。

下面是價(jià)格和特性都不同的兩個(gè)工具,但是在 Web 上還有其它幾個(gè)第三方工具可以免費(fèi)下載。

http://www.bysoft.se/sureshot/exej/
http://www.duckware.com/jexepack/
使用商業(yè)安裝程序(installer)
InstallAnywhere 是一個(gè)常用的安裝程序,它將管理應(yīng)用程序的安裝過(guò)程,并將應(yīng)用程序打包為可執(zhí)行程序。

使用 .jar
除了以上方法之外,還可以將應(yīng)用程序打包為一個(gè)可執(zhí)行的 .jar 文件,而不是一個(gè) .exe 文件。在這篇文章中我將不詳細(xì)介紹這種方法,你可以在這里找到一個(gè)非常棒的在線教程

你需要做的最重要的一件事是指定在 .jar 文件中哪個(gè)類是應(yīng)用程序的入口點(diǎn)。例如,對(duì)你的應(yīng)用程序來(lái)說(shuō)就是具有一個(gè) public static void main(String[] args) 方法的引導(dǎo)類?梢栽 .jar 表示文件的 Main-Class 頭部信息中提供這些信息。這個(gè)頭部信息的通用形式為:Main-Class: classname,其中 classname 是應(yīng)用程序的入口點(diǎn)的類名稱。

使用 Java Webstart
Java Webstart 是標(biāo)準(zhǔn) Java 運(yùn)行時(shí)環(huán)境(JRE)的隱藏的寶物,自從版本 1.3 開(kāi)始,JRE 就包含了 Java Webstart。它是一個(gè)簡(jiǎn)單但功能強(qiáng)大且靈活的將應(yīng)用程序部署到任何平臺(tái)的方法。

Webstart 允許應(yīng)用程序的用戶從他們的瀏覽器、電子郵件或桌面啟動(dòng)和管理應(yīng)用程序。Java Webstart 的一個(gè)主要優(yōu)點(diǎn)是一旦應(yīng)用程序被安裝,在每次啟動(dòng)它時(shí),它都將會(huì)檢查用戶是否在運(yùn)行最新版本的應(yīng)用程序。如果不是,應(yīng)用程序?qū)⑼ㄟ^(guò)網(wǎng)絡(luò)裝載新版本到桌面然后執(zhí)行,因此解決了軟件傳播問(wèn)題。

如果你的應(yīng)用程序已經(jīng)有很多用戶的話,這一點(diǎn)就尤其重要。還有很重要的一點(diǎn)是,它能夠檢查用戶的本地桌面環(huán)境,并能保證他們安裝了正確的 JRE 版本來(lái)運(yùn)行你的應(yīng)用程序。

Java Webstart 本身有一系列文章,所以我建議你訪問(wèn) Java Webstart Web 站點(diǎn)查看更多文檔和教程。

結(jié)束語(yǔ)
前兩種方法可能會(huì)滿足你對(duì)這個(gè)問(wèn)題的需要,但是我強(qiáng)烈建議你仔細(xì)看一下 Java Webstart。它是 Java 標(biāo)準(zhǔn)的一部分,并且能夠在所有平臺(tái)下一致工作。我比較喜歡這個(gè)應(yīng)用程序打包方法。


--------------------------------------------------------------------------------
本文作者:Michael Geisler 是 Sun 微系統(tǒng)公司的一位解決方案架構(gòu)師,他在 IT 和通信行業(yè)已經(jīng)有14年的從業(yè)經(jīng)驗(yàn)。自從第一個(gè) Java 第一個(gè)公開(kāi) beta 版本發(fā)布以來(lái),他就一直使用 Java 編程,目前 Michael Geisler 是澳大利亞 Java 用戶組(AJUG)的副總。


相關(guān)文章