原創|其它|編輯:郝浩|2012-10-12 15:49:27.000|閱讀 1751 次
概述:如何把一個Java程序打包成exe文件,運行在沒有Java虛擬機的機器上?首先,將編譯好的程序打包成jar文件,然后做出exe,這樣代碼就不可見了,但是exe文件在沒有安裝jre的電腦上不能運行,如果要求客戶再去安裝jre并設置環境變量就不太人性化了,所以我們需要將jre打包。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
如何把一個Java程序打包成exe文件,運行在沒有Java虛擬機的機器上?
首先,將編譯好的程序打包成jar文件,然后做出exe,這樣代碼就不可見了,但是exe文件在沒有安裝jre的電腦上不能運行,如果要求客戶再去安裝jre并設置環境變量就不太人性化了,所以我們需要將jre打包。
這幾步操作網上介紹的插件和方法很多,但很多不好用。經過篩選,最終選擇了Exe4j,并使用Install4j來增加安裝引導。
廢話不多說,下面發出建議步驟:
推薦工具:Exe4j
用Exe4j把java打包成exe,在我們寫程序的時候,有時會有一種需求,那就是希望我們的程序是一個可執行文件,而不是一個jar文件,其實大部份時候,可執行的jar文件都可以滿足要求,但是如果我們的程序是需要保護的,那么打包成jar文件就不太安全了,因為jar文件就是一個解壓縮文件,一解壓就什么都能看到了,當然也可以選擇混淆,但是混淆了以后排錯就沒那么容易了,因為混淆的時候,把一些類的信息都混淆了。如何既保證代碼的安全又容易排錯呢?那么打包成exe就是一種很好的辦法了,其實我今天介紹這個方法并不是希望大家去打包成exe文件,因為exe文件畢竟不是跨平臺的,用了exe的格式就失去了java的初衷了。
Exe4j可以打包成各種格式的exe,可以把jar打包進exe,也可以引用一個外部的 jar文件,還可以打包成windows服務的程序,并且可以設置最低jre的版本,還可以設定啟動畫面,雖然java6.0已經實現了這一點,但是還是沒有Exe4j生成的啟動畫面快。
詳細的打包步驟,網上很多,這里不再整理了。
推薦工具:Install4j
Install4j是一個功能強大的,多平臺Java安裝文件生成工具,用于生成Java應用程序本地化的安裝及應用程序發布。 Install4j的優異性在于它易于使用,緊密的集成到目標平臺,以及靈活的JRE 管理與部署選項。
Install4j的圖形用戶界面允許你:
完全自定義發布樹
在發布樹的每一個目錄中,你能設置整個目錄內容或是磁盤上任何目錄的單個文件。定義的視圖與結果視圖讓你能完全控制安裝程序將發布的文件。
處理特定平臺的差異
Install4j提供方便的“包含/排除”機制,使其適應平臺方式來進行發布。
針對Unix, Linux 及Mac OS X所定義的文件權限
對發布樹的每一個元素,當其安裝在類似于Unix這樣的平臺上時,你能自定義用戶訪問的權限。
定義優良的卸載策略
對發布樹的每一個元素,你能決定在卸載時是否刪除它。
定義覆蓋策略
對發布樹的每一個元素,你能配置不同的覆蓋策略,當安裝過程中需要覆蓋文件時,這些覆蓋策略會指示nstall4j進行相應的操作。
定義安裝的組件
你能定義文件及目錄的分組,形成分離的安裝組件,這樣你就可提供給用戶來選擇只安裝一定的組件。
其實一個好的應用如果不太好布署,那么別人也只能對它望而興嘆了,現在有了 Install4j,很多布署的問題幾乎全部解決了。我們可以用Exe4j打包java應用,然后用Install4j發布java應用,以前java程序布署難的問題,現在幾乎都解決了。Install4j不但用于打包很合適,并且它還提供了一組很強大很實用的與平臺相關的api。這些對于擴展我們的程序也是有很大的幫助的。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:樸人博客