1. 步驟 建立檔案夾(存放jre與即將產生的exe檔案) 產生jar可執行檔 Lanuch4j 產生exe檔案
2. 建立發布檔案夾
建立這個檔案夾的目的是為了存放jre與exe檔案的,當exe檔案產生後,可以直接將這個檔案打包成zip檔案。使用時,解壓然後點擊其中的exe檔案即可。
如圖:
lib存放了jre。(jre可以放在ExcelMergerTool檔案夾下的任何位置)
Exe檔案建議直接放在發布檔案夾下。
另外jre可以根據實際進行精簡。
目的:將jre與exe檔案放在一起,方便管理,發布。 3. 產生jar可執行檔
這裡將藉助eclipse的export功能來實現。
特別注意的是:當java程式依賴第三方包時,要注意export的類型。
假設java程式依賴第三方包
項目結構 確定要匯出的包與檔案夾
通過點擊 項目properties-java build path來選擇
上圖顯示了哪些檔案夾會被放入產生的jar檔案:
只有設定為sourcefolder以及source folder下的非空檔案夾會被匯入。
如
由於lib不是 source folder,所以其不會被匯入到jar檔案
Source folder下的Image也有可能不會被匯入,如果其是一個空檔案夾。
確定要匯出的第三方依賴包
Libraries下顯示的所有依賴包都會被匯入jar檔案中,當然除了其中的jre.
產生可執行jar檔案
· 右擊專案檔,選擇export
· 選擇Runnable JAR file
· 確定產生的Jar位置
· 點擊finish產生runnable jar
4. Lanuch4j 產生exe檔案 下載lanuch4j
http://launch4j.sourceforge.net/ 確定exe檔案產生位置
· Outputfile指定:產生exe檔案位置。
注意:一定是之前建立的“發布檔案夾”下。
· Jar:指的是上面已經建立好的runnable jar。
注意:如果jar下面的Don’t wrap thejar, launch only複選框沒有被選中,則產生的exe檔案將把jar指定的runnable jar檔案封裝成exe檔案,也就是output file中指定的ExcelMergerTool.exe將包含有ExcelMergerTool.jar檔案。這樣一來,當exe產生成功後,ExcelMergerTool.jar可被刪除掉了。
· Changedir:指明根路徑
用 . 來表示根路徑是OutputFile指定的EXE檔案所在的父資料夾。
在上圖其相當於:E:\temp\source\ExcelMergerTool
這個設定很重要,當設定jre位置時,根據它來設定相對位置
如./lib/jre6說明jre的位置是:exe所在父資料夾下的lib檔案夾下,這裡exe的父資料夾是ExcelMergerTool,所以jre的位置是:
…./ExcelMergerTool/lib/jre6
採用相對位置作用:
無論發布檔案夾所在位置如何變化,exe都能夠根據自身所在的位置(父資料夾作為參照點)找到jre。
確定jre版本和內建jre位置
· BundledJRE path:指定jre位置
如上述的change dir中設定的 . 將影響到這個值的設定。
· Min JREversion: 指定jre 最低版本
旁邊的下拉列框設定了jre訪問機制,
可以只訪問自訂的Jre。
可以:如果啟動並執行pc上有安裝jdk,且版本更高,則引用pc的。
以及其他選項
· Intialheap size 與max heap size:設定佔用記憶體大小
這個可留空。
產生exe檔案
點擊這個按鈕後,其會讓你儲存一個設定檔(xml),其對產生的exe檔案的運行沒有影響,因此其存放位置可隨意。
最後在log中會顯示產生的狀態。
5. 打包與運行exe檔案
可以對發布檔案夾進行壓縮,如壓縮成zip格式,當需要使用時,解壓縮,雙擊運行其中的exe檔案即可。