Java程序包裝成桌面應(yīng)用程序方式
現(xiàn)在主流都是web開發(fā),有誰像我一樣的,開發(fā)N年后被要求做幾個(gè)桌面程序,哈哈,本來也不會(huì),入了幾個(gè)坑后,現(xiàn)在博文獻(xiàn)主,希望解你憂愁。
一、首先你得有寫好的JAVA代碼
并能夠跑起來,注意,不是WEB結(jié)構(gòu),是純JAVA結(jié)構(gòu),我的結(jié)構(gòu)如下,不會(huì)建JAVA結(jié)構(gòu)的可以百度,一大堆。這里就不贅述打。

二、你得下載一個(gè)打包成exe的助手exe4j
這長這樣(這里就不提供下載地址了,網(wǎng)上百度一下,一大堆,哈哈)

打開后是這樣

三、你得準(zhǔn)備好JRE包
比如,你的可執(zhí)行程序要在64位電腦上運(yùn)行,那你得準(zhǔn)備64位的JRE包,至于下載地址,還是一句話,官網(wǎng)自行下載JDK(必須和你的JAVA配置的JDK版本一樣,或者直接用你JAVA配置的JDK也可以).
我的JRE是這樣

這里有一個(gè)重點(diǎn)問題,敲黑板,劃重點(diǎn)。
如果你開發(fā)的JAVA程序用了外部JAR包,那怎么打包呢,請(qǐng)看下面解決方法。
1.找到你的外部JAR包,比如,我的是poi jar包,它長這樣

2.全部復(fù)制它們
3.找到你下載好,或者準(zhǔn)備好的JRE,我的長這樣

4.找到lib點(diǎn)進(jìn)去,然后點(diǎn)擊ext文件夾(此文件夾的作用就是用來放外部包的),把剛剛復(fù)制的JAR包,全部放在這個(gè)文件內(nèi),我放好后長這樣

外部JAR包至此已處理OK。
四、將你的JAVA項(xiàng)目打包成JAR包
方法如下

右擊你的項(xiàng)目,點(diǎn)擊open module settings
然后artifacts—> + —> JAR—>from modules with dependencies,如圖

選擇你的main class 然后點(diǎn)OK,一直O(jiān)K下去,我的是

然后


最后去你的目錄找JAR包,我的長這樣

五、關(guān)鍵步驟,打包成exe可行程序
1.把你的JAVA程序生成的JAR包,和準(zhǔn)備好的JRE包,放在一個(gè)文件夾下,我是新增了一個(gè)salarycomputer文件夾,然后將它他放了進(jìn)去,它們長這樣

2.打開EXE4J

選擇jar in exe mode,下一步

選擇你的EXE輸出路徑和你的EXE名字

選擇你要打包的EXE位數(shù),注意,因?yàn)槟愕腏RE包是64位,所以這里只能選64位,如果你想打包成32位,那你的JRE包必須要配置32位的

選擇你的JAVA生成的JAR包

點(diǎn)擊JRE 點(diǎn)擊advanced options 點(diǎn)擊search sequence
選擇你的JRE包,必須和你的JAR包放在同一目錄,我的是JAR包和JRE全放在salarycomputer文件夾內(nèi)的,如果你沒有按我上面的要求做,那么下面打包將會(huì)失敗

一直點(diǎn)擊下一步,最會(huì)將會(huì)生成一個(gè)EXE文件。
至此大功告成。
以下注意。生成的EXE文件,必須放在你先前放JRE和JAVA JAR包的目錄里.如果你要將此EXE程序發(fā)給別人,那么,必須連JRE一起發(fā),并且是同一目錄,。我的長這樣

想發(fā)給別人使用,就直接將上面兩個(gè)壓縮發(fā)給他就行了了。是兩個(gè),不是一個(gè)哦,即JRE 和EXE。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
JavaWeb實(shí)戰(zhàn)之編寫單元測(cè)試類測(cè)試數(shù)據(jù)庫操作
這篇文章主要介紹了JavaWeb實(shí)戰(zhàn)之編寫單元測(cè)試類測(cè)試數(shù)據(jù)庫操作,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)javaweb的小伙伴們有很大的幫助,需要的朋友可以參考下2021-04-04
Springboot 項(xiàng)目讀取Resources目錄下的文件(推薦)
這篇文章主要介紹了Springboot 項(xiàng)目讀取Resources目錄下的文件,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-11-11
Spring?Boot?MQTT?Too?many?publishes?in?progress錯(cuò)誤的解決方
本文介紹Spring?Boot?MQTT?Too?many?publishes?in?progress錯(cuò)誤的解決方案,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下2022-07-07
新版IDEA使用Spring Initializr創(chuàng)建工程的兩種方法
這篇文章主要介紹了新版IDEA使用Spring Initializr創(chuàng)建工程(兩種方法,官方工具和IDEA),文中通過代碼示例和圖文結(jié)合的方式給大家講解的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下2024-10-10
關(guān)于gradle多模塊項(xiàng)目依賴管理方式
這篇文章主要介紹了關(guān)于gradle多模塊項(xiàng)目依賴管理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04
Spring常見錯(cuò)誤之Web嵌套對(duì)象校驗(yàn)失效解決辦法
這篇文章主要介紹了Spring常見錯(cuò)誤之Web嵌套對(duì)象校驗(yàn)失效解決的相關(guān)資料,通過在Phone對(duì)象上添加@Valid注解,問題得以解決,需要的朋友可以參考下2025-01-01
使用cmd根據(jù)WSDL網(wǎng)址生成java客戶端代碼的實(shí)現(xiàn)
這篇文章主要介紹了使用cmd根據(jù)WSDL網(wǎng)址生成java客戶端代碼的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-03-03

