關於如何打包/運行jar包,以及生成exe文件。之前各種查詢、博客,終於搞明白究竟是咋回事。記得還做過筆記的。今天要打包生成exe用的時候,居然忘了咋怎來着。去查看之前的筆記,死活沒找到(好像被刪掉了)。決定寫下來,以便之后隨時調用。
一、jar包
什么是jar包?jar包即(Java Archive File),也就是java歸檔文件。JAR 文件與 ZIP 文件唯一的區別就是在 JAR 文件的內容中,包含了一個 META-INF/MANIFEST.MF 文件,這個文件是在生成 JAR 文件的時候自動創建的。jar分為:一般jar包和可執行jar包。
二、如何打包成jar包
①使用eclipse進行打包
1.選擇要打包的工程-->鼠標右鍵-->選擇Export
2.導出為一般jar包 和 可執行jar包
②使用命令進行打包成jar包 (已配置好java環境,可直接在控制台輸入jar查看命令幫助)
打包為一般jar包
1)使用eclipse編寫的程序:class文件在bin目錄下,src中是源文件。
步驟:在工程目錄下運行CMD,輸入命令: jar cvf jarPackageName.jar -C bin .
會在工程目錄下生成jar包文件。
2)使用編輯器編寫的,且編譯后的.class文件,根據目錄進行打包,若單個或多個class文件則
步驟:在class文件目錄下運行CMD,輸入命令:jar cvf jarPackageName.jar No1.class No2.class
打包為可執行jar包
1)使用eclipse編寫的程序:導出的可執行jar 不要需進行修改,可直接運行jar包。
2)使用編輯器編寫的,且編譯后的.class文件。(jar cvfm jarPackageName.jar MANIFEST.MF bin .)
步驟:創建MANIFEST.MF文件,在文件按格式寫下
Manifest-Version: 1.0
Created-By: 1.6.0_22(Sun Microsystems Inc.)
Class-Path: .
Main-Class: MianClass
Manifest-Version 指清單版本,默認生成Manifest-Version: 1.0
Created-By 指創建作者,默認生成Created-By: 1.6.0_22 (Sun Microsystems Inc.)
Class-Path 指主類所在路徑
Main-Class 指程序的主類 main 方法的類。
在class文件目錄下CMD中,輸入命令:jar cvfm jarPackageName.jar MANIFEST.MF *.class
注 :
>>從eclipse生成的一般jar包和可執行jar中可以看出:一般jar 包中的MANIFEST.MF文件沒有指定Main-Class,而可執行jar包中是含有的。
>>可執行的jar包中必須指定Main-Class,否則會提示“jar包中沒有主清單屬性”。
>>若MANIFEST.MF文件中只寫Main-Class時,需要在末尾敲回車。
三、運行jar包
在jar包目錄下進入CMD,輸入命令:java -jar jarPackageName.jar
四、生成exe文件
前提准備:exe4j_window-x64.exe;可執行jar包
1.歡迎界面
2.選擇“JAR in EXE ” mode ,點擊Next
3.應用程序配置,輸入程序名稱。及保存exe文件的路徑
4.選擇可執行的程序類型,輸入exe文件名,點擊Next(其他選項可不填)
若有需要可選擇設置
5.選擇jar包和jar包中的Main-class,點擊Next
6.設置程序的運行環境。點擊Next
7.一直點擊Next,進入該界面(生成exe程序界面).成功會直接進入Finished界面。否則出現彈出報錯
8.完成