標籤:
本文轉載地址:
http://blog.csdn.net/sunkun2013/article/details/13167099
1、背景:
學習java時,教材中關於如題問題,只有一小節說明,而且要自己寫麻煩的設定檔,最終結果卻只能轉換為jar檔案。實在是心有不爽。此篇部落格教你如何方便快捷地把java代碼,打包成jar檔案以及轉換為exe可執行檔
2、前言:
我們都知道Java可以將二進位程式打包成可執行jar檔案,雙擊這個jar和雙擊exe效果是一樣一樣的,但感覺還是不同。其實將java程式打包成exe也需要這個可執行jar檔案。
3、準備:
eclipse或Myeclipse以及exe4j(網上有軟體和帳號下載)
4、具體步驟:
Step1:將java項目打包成可執行jar檔案
首先看一下我的java project結構,Main.java是程式入口類,裡面有main函數,config目錄是些設定檔,lib是用到的第三方類庫
開始打包,Simulate(Java項目)-滑鼠右鍵-Export
快顯視窗,選擇“JAR file”,點擊“Next”
取消勾選“config”和“lib”目錄,以及eclipse產生的項目設定檔“.classpath”和“.project”,點擊“Next”
一切預設,點擊“Next”
在快顯視窗中,選擇我們自己建立的MANIFEST.MF檔案,點擊“Finish”
我的MANIFEST.MF檔案內容為:
Manifest-Version: 1.0Main-Class: bing.Main Class-Path: . lib/ojdbc14.jar lib/poi-2.5.1.jar lib/jbcl.jar lib/JTattoo.jar lib/liquidlnf.jar Created-By: Kun Sun
通過指定“Main-Class”來達到可執行jar檔案的目的。其實我們最終是將項目打包成exe,Class-Path可以不指定,在打包exe的時候還要指定classpath的。
Step2:將項目打包成exe
這裡要明確一點,並不是把所有的檔案都打包成一個exe,資源檔是不能包進去的,往下看↓
首先,在任意目錄建立一個檔案夾,最好命名和項目名相同,我在F盤建立了一個“Simulate”檔案夾,之後將所有的資源檔以及我們產生的可執行jar檔案(我的Simulate.jar)都拷貝到這個檔案夾裡,config目錄和lib目錄,如果你怕執行該程式的機器上沒安裝jre,那麼你需要將自己機器上的jre目錄也拷貝進來,我安裝的jre5,最後的目錄結構:
開啟exe4j,跳過歡迎,直接點擊左側導航的第二項,因為我們已經提前將java項目打包成可執行jar檔案了
在快顯視窗,選擇“JAR in EXE mode”,點擊“Next”
在新視窗中,為我們的應用取個名稱,之後選擇exe組建目錄(我的F:\Simulate),點擊“Next”
為我們要產生的exe取名,如果想產生自訂表徵圖,那麼選擇你的ico檔案,如果你不想在一台電腦上運行多個你的程式,你可以勾選“Allow only a single...”,點擊“Next”
點擊綠色“+”,設定程式啟動並執行Class Path
先選擇我們自己的可執行jar檔案(我的Simulate.jar),點擊OK
我們的Simulate.jar就加到Class Path下了
之後點擊General中的Main Class選擇按鈕,在快顯視窗中,exe4j會自動搜尋當前Class Path下的全部jar中包含main方法的類,並列出,因為當前我只選擇了自己項目的jar,而我的項目中只有Main.jar包含了main方法,所以一目瞭然,直接選擇它點擊“OK”,程式入口類就設定完成了
Main Class設定完成後,依次將所有需要的第三方類庫加到Class Path下,方法同添加“Simulate.jar”一樣,點擊“Next”
輸入Java最小Jre版本號碼,即低於這個版本的Jre無法運行該程式,接著點擊“Advanced Options”-“Search sequence”,設定一下我們的JRE,之前說過,如果客戶機上沒裝Jre咋辦?,沒關係我們捆綁一個進去
點擊綠色“+”來選擇捆綁的JRE位置
在彈出對話方塊中選擇“Directiony”,之後選擇JRE的檔案夾,注意:這個JRE目錄是我們將原生JRE目錄拷貝到當前exe組建目錄下的,我的目錄是F:\Simulate\jre5,程式使用的是相對目錄,點擊OK,完成JRE的捆綁操作
JRE捆綁完畢,點擊“Next”
預設,點擊“Next”
預設,點擊“Next”
預設,點擊“Next”
exe產生中
OK,完成,點擊“Exit”即可
看看成果如何吧!
我們的可執行jar以及第三方jar總共還不到5M,可jre5目錄就50多M,如果目標機器上有JRE環境就可以把它刪掉了,lib目錄是第三方jar檔案,現已打包到exe中了,所以它也沒有存在的理由了,那麼最小配置就剩下了“Simulate.exe”和“config”目錄了!
5、備忘
上述步驟基本上是自己已經嘗試過的步驟,其中有些步驟可以省略,比如說Step1中從java代碼轉換為jar的過程中可以不寫設定檔(MANIFEST.MF檔案),系統會自動給出,是不是很方便,。再比如Step2中的綁定jre,可以不綁定。至於其餘可以更最佳化及方便地步驟,讀者可以自己摸索嘗試。
手把手教你如何把java代碼,打包成jar檔案以及轉換為exe可執行檔