准備材料:
1.java文件:
Helloworld.java
package com.ray; public class HelloWorld{ public static void main(String[] args) { System.out.println("Hello!jar"); } }
2.指定目錄:建一個目錄,來存放.class文件和.jar文件。 本文指定目錄為 E:\myclass 。
一.命令行形式
1.將java文件編譯到指定目錄:
語法格式為:javac -d 指定目錄 java文件
編譯到 E:\myclass: javac -d e:\myclass HelloWorld.java
若出現亂碼異常則可以指定字符編碼: javac -encoding UTF-8 -d e:\myclass HelloWorld.java
2.指定Main-Class:
編譯完成后,myclass目錄下生成了com文件夾。此時,在myclass文件目錄下,建一個文件A(如1.txt)。
文件內容:Main-Class:(空格)全類名(回車)
1.txt文件內容為:Main-Class: com.ray.HelloWorld 回車
3.cmd進入指定目錄(E:\myclass),使用jar命令打包
語法格式:jar -cvfm (jar名) 文件A 包的頂級目錄
c m f
參數c:指定是創建新的歸檔文件。
參數v:在標准輸出中生成詳細輸出,該選項是可選的。
參數f:指定打包后的包名。
參數m:指定自定義的MANIFEST.MF清單文件,否則,JDK會自動生成不包含Main-Class的默認清單。
本例: jar -cvfm my.jar 1.txt com
通過上述三個步驟,便在E:\myclass目錄下創建了my.jar。當然這三個步驟,也可酌情省略。
另:附上在cmd中運行jar包的命令: java -jar jar包名,如 java -jar my.jar
二.在Eclipse中
1.打包成一般jar包
(1)要打包的項目上右擊—> Export—> Java —> JAR File—>next
(2)在JAR File Specification窗口中,設置打包成的文件名和存放位置,點擊兩側next
(3)在JAR Manifest Specification窗口中,設置MANIFEST.MF清單文件的配置,
若僅僅打包成單純的jar包的話,不用做任何修改,采取默認即可
若打包成可執行jar包的話,可以使用已存在的MANIFEST文件或者直接選擇Main class
(4)點擊Finish按鈕,完成打包。
2.打包成可運行的jar包
(1)要打包的項目上右擊—>Export—>Java —>Runnable JAR File—>next
(2)在Runnable JAR File Specification窗口中,選擇Launch configuration和Export destination
(3)點擊Finish按鈕,打包完成。