1. 程式人生 > >java專案打包成exe可執行檔案

java專案打包成exe可執行檔案

前言:

我們都知道Java可以將二進位制程式打包成可執行jar檔案,雙擊這個jar和雙擊exe效果是一樣一樣的,但感覺還是不同。其實將java程式打包成exe也需要這個可執行jar檔案。

準備:

eclipse、exe4j(網上有軟體和帳號下載)

第一步,將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.0 Main-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: IceWee

通過指定“Main-Class”來達到可執行jar檔案的目的。其實我們最終是將專案打包成exe,Class-Path可以不指定,在打包exe的時候還要指定classpath的。

第二步,將專案打包成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”目錄了!