Java jar命令 常見用法


一、jar命令作用:

 進行打包 -- 把多個文件打包成一個壓縮包 -- 這個壓縮包和Winzip的壓縮格式是一樣的.

 區別在於jar壓縮的文件默認多一個META-INF的文件夾,該文件夾下包含一個Manifest.mf(清單文件)的文件

 通常來說jar命令得到的壓縮包有三種(壓縮格式完全一樣,只是后綴名不同而已):

  A、*.jar - 它里面包含N個class文件。

  B、*.war (web) - 它是一個web應用打包生成的。

  C、*.ear(Enterprise) -它是一個企業應用打包生成的包

 

二、jar命令用法:

 -c 創建新的歸檔文件

 -t 列出歸檔目錄和文件

 -x 解壓縮已歸檔的指定(或所有)文件

 -u 更新現有的歸檔文件

 -v 在標准輸出中生成詳細輸出 / 提供更詳細輸出信息

 -f 指定歸檔文件名 / 為壓縮包指定名字

 -m 包含指定清單文件中的清單信息 

 -e 為捆綁到可執行 jar 文件的獨立應用程序

 

指定應用程序入口點

 -0 僅存儲,不壓縮,只是打包;不使用任何 ZIP 壓縮

 -M 不創建條目的清單文件 META-INF/MANIFEST.MF

 -i 為指定的 jar 文件生成索引信息

 -C 更改為指定的目錄並包含其中的文件

1、創建壓縮包

 jar -cf mytest.jar *.class 

 //將當前目錄下的*.class文件壓縮到上一級目錄的mytest.jar文件內

 jar -cvf mytest.jar *.class

2、創建壓縮包,不生成清單文件MANIFEST.MF 大寫M

 jar -cMf mytest.jar *.class

3、查看壓縮包

 jar -tf mytest.jar

 jar -tvf mytest.jar

4、解壓

 jar -xf mytest.jar //解壓到當前目錄

 jar -xvf mytest.jar 解壓可看到詳細的過程

5、更新壓縮包

 jar -uvf mytest.jar 要加入的指定class文件

 

為什么要制作jar包?

 一個真實項目中,涉及到的class文件是非常多的。非常多的class文件存在以下問題:

  a.系統管理不方便;

  b.JVM要分開依次加載不同的*.class文件,效率很低,於是就可以把多個class文件打包成一個jar包,這樣好處是:

    ①.多個class文件都統一成一個jar包方便管理;

    ②.JVM可以直接加載jar包就可以一次性加載N個類,效率更高

 

 打包成可執行性jar包

  通過 -e 選項 告訴系統哪個類是該jar包的主類

  jar -cvfe mytest.jar UserTest *.class(指定的主類)

  如果機器上安裝了獨立的虛擬機,只要雙擊“可執行性”的jar包即可執行

  java -jar jar包名    -指定要執行的jar包

如果不需要生成清單文件MANIFEST.MF,可以直接使用WinRAR或Winzip來壓縮(必須壓縮成zip格式),解壓也可如此


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM