java項目導出爲jar並使用exe4j打包成可運行exe程序

前言: 上一篇文章寫道  java項目打包成jar編寫啓動文件在windows和Linux下運行 ,對於普通的java應用程序這種方式沒有什麼問題,but,最近突然想起來,這樣好不容易寫的程序,class源碼不就相當於暴漏了嗎,所以如果在Windows下直接打包成一個exe的運行程序就好了。

1、項目的目錄結構如如下圖:



   1.1   src  下 有  com.trs.file.util包和 log4j..properties 日誌配置文件,com.trs.file.util 包存放具體java類

   1.2   JRE System Library  爲java項目JRE引用,項目使用的是jdk1.8.0

   1.3   lib   log4j-1.2.17.jar架包引用

   1.4  logs   存放 日誌文件的文件夾

   1.5   根目錄下的項目 config.properties 配置文件

2、程序測試通過後,可進行打包,具體步驟爲:

    2.1、選中項目名,右鍵(Export)導出,選擇java——> JAR file,如圖:


   2.2,Next下一步,如圖:

    2.2.1 將  項目結構中 .settings 不用勾選,右側 .classpath 和 .project 不用勾選,其餘目錄結構完整保留即可,(網上很多粘貼複製黨說只保留 src下文件,後面能坑死人)


      2.2.2  選擇 JAR file 要導出的路徑,自己選擇一下導出要存放的路徑即可。




3、Next 下一步,如圖:




4、選擇程序運行main方法類文件

     4.1,選擇項目中 程序運行的 main方法所在的類文件,點擊browse,在彈出框中就可以看到,點擊OK即可,在點擊Finish完成。


  4.2 ,如果點擊Finish時彈出 如圖警告提示,表示程序中不被建議(或已棄用)的語法,或者有編譯錯誤,如果已經測試過,沒有影響,則不用理會,點擊ok就行了。



4.3  查看jar,在步驟 2.2.2中保存的路徑下找到  生成的jar查看,如圖:    


4.4  到此java程序打包成jar就準備好了,開始把它變成 exe運行文件吧,將jar轉成exe需要用到一個 叫 exe4j的 軟件,

根據自己的操作系統下載對應即可,這裏提供exe4j-6.0 的64和32爲下載 : exe4j


5,下載安裝完成後,界面如圖,第一步完成註冊,Name,Company隨便填就是了,註冊碼:A-XVK258563F-1p4lv7mg7sav (網上很多啊,隨便搜一個就行),

完成後點擊Next

    

5.2 勾選JAR in EXE ,表示要打包jar成exe程序,然後下一步


5.3 ,填寫打包後的 exe程序名稱和保存路徑。



5.34,填寫打包後的 exe程序名稱和保存路徑。 這一步很重要的啊, 開始我沒選程序類型,默認爲gui程序,運行exe程序後,什麼反應都沒有,

我以爲報錯了呢,後來通過日誌發現日誌文件在刷新,再一看任務管理器竟然在運行這,可是沒有任何反應,我這個崩潰啊,有研究了好久什麼exe

彈出窗口啊,運行程序彈出窗口啊,doc窗口,日誌輸出啊,差點跑偏到java窗體程序上去了,研究一下午麻蛋最後才發現應該選控制檯程序,切記切記。

然後我就下一步到 第5步了,最後生成發下,還是報錯啊,又研究了好久,最後發現 左側第4步還藏着好多選項呢,其中就是 選擇是32位還是64位運行,

你的手動點擊去勾選,要不然又能坑死你的如下圖



5.35 開始添加 要運行的jar路徑,如果打包成的這個java項目jar中還用到了其他的jar包,需要也單獨再引入,比如我的項目中還用到了 log4j的

jar包,雖然java項目導出成jar時已經有了,但是還需要在這一步也添加進來。


並且選擇要運行的主類的main方法


下一步,填寫支持運行的jdk版本,如果要打包的exe程序在運行的電腦上有jdk環境支持,那麼可以直接下一步了,但是有些小白客戶的

電腦上怎麼可能會有呢,所以這時就需要在打包的時候把jre環境一併打包好,


連帶打包jre : 點擊Advanced Options

在將準備好的jre添加進來,注意:jre文件必要包一層jre目錄,即新建一個 jre文件件,將jre放進去 jre\jre,然後刪除兩個文件,如圖:




5.5,Next下一步,下一步只到完成即可,




5.6,去到保存exe的文件路徑,點擊exe程序進行測試。


啊啊啊,程序報錯,說找不到指定文件,因爲的項目用到了 config.properties嘛,複製過來再試一次



ok,沒有任務問題了,

整理下,把文件夾的其他無關文件都刪除,最後運行測試通過


6,再把該文件夾打包壓縮,發給沒有jre的小白試一下吧。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章