一、將Java程序導成jar包
-
點擊File—>Project Structure,點擊Artifacts,Add一個JAR
-
進入下圖頁面後,選擇程序的Main Class
-
爲了要把程序所依賴的jar包全部包含進去,選擇“copy to the output……”,注意下面要選擇MANIFEST文件的存儲位置,要新建一個文件夾一下,我直接在src下面新建了一個resource文件夾,點擊OK
-
對“output root”點擊右鍵,選擇創建目錄
-
我創建了一個名爲“libs”的目錄,將程序依賴的lib全部移到libs文件夾中
-
點擊創建的jar,下面會出現Class Path的配置頁面,點擊編輯按鈕,在依賴的jar包前面配置一下文件夾名(在指定的jar文件之前增加“libs/”即剛纔存放第三方Jar文件的新建目錄的名稱),之後點擊OK、Apply
-
回到Idea主頁面,點擊上面工具欄的“Build”,選擇Build Artifacts,之後點擊Build
-
等待片刻,jar包就build好了,可以看到out目錄下build成功的jar包
二、將jar包轉爲exe文件
- 首先需要exe4J軟件
鏈接:https://pan.baidu.com/s/1kRu9Gst7wcLPYtQ4Jy0YwQ
提取碼:r1ai
自行下載,安裝過程省略,一直下一步就行
- 打開exe4j軟件,點擊next,選擇“JAR in EXE”mode,點擊next
- 填寫程序名和exe文件的存放位置
- 填寫生成的exe文件的名稱,注意不要直接next,點擊左邊工具欄的位數選擇
- 如果系統是32位的,可以跳過這一步,如果是64位,勾選上這個選項,然後一直next
- 直到Configure Java invocation這一步,點擊右邊的加號
- 然後把程序所依賴的jar包和程序jar包全部添加進來
- 選擇程序的入口Main class,結果如下,點擊next
- 進入Configure JRE,設置一下JRE版本,點擊左邊的Search sequence
- 首先把默認的JRE的三個配置全部刪掉(因爲我們要運行在沒有JVM的環境中,所以無論是根據註冊表找還是根據JAVA_HOME來找,都找不到)
- 將jre文件夾拷貝到我們項目目錄下,配置jre的相對路徑,點擊OK,next
- 一直默認next就好
- 之後exe就生成成功,結構如下,點擊Ole.exe即可運行
- 注意要把整個項目拷貝到其它機器,包括jre文件夾
注意:
1. exe4j是不可以將jre直接打包進exe中去的。但exe4j提供了一個搜索jre路徑,這個路徑可以是系統的環境變量,也可以是註冊表,也可以是具體的某路徑。
由於要實現在沒有jvm的電腦上運行,搜索環境變量與註冊表自然是無用功的了,所以只能搜某路徑的。把jre的路徑,加進去,就行了。但要注意一點:不然用絕對路徑哦。我之前就是用絕對路徑,導致無效的,而走了彎路的。比如可以用:./jre
2. 打成安裝包時,要將生成的exe文件與jre一起打包。爲了確認打完包,可以用,在沒打包之前,點該exe文件,要確認能運行,不然打包要白忙了。
參考鏈接:關於將java程序導成.exe
參考鏈接:idea打包java程序(包含依賴的所有jar包)
參考鏈接:JavaFx項目打包成exe,並集成Jre