java 使用jar_Java 使用JAR文件
JAR,Java Archive File,Java檔案文件。JAR文件是一種壓縮文件,與ZIP壓縮文件兼容,通常稱為JAR包。JAR文件中默認包含了一個名為META-INF/MANIFEST.MF的清單文件,是在生成JAR文件時由系統自動創建的。
使用JAR文件與以下好處:
安全。能夠對JAR文件進行數字簽名,只讓能夠數字簽名的用戶使用里面的東西
加快下載速度。在網上使用Applet時,如果存在多個文件而不打包,為了能夠把每個文件都下載到客戶端,需要為每個文件單獨建立一個HTTP連接,耗時。將這些文件壓縮成一個JAR包,只要建立一次HTTP連接就能夠一次下載所有的文件
壓縮。
包裝類。能夠讓JAR包里面的文件依賴于統一版本的類文件
可移植性。JAR包作為內嵌在Java平臺內部處理的標準,能夠在各種平臺上直接使用
jar命令詳解
1 創建JAR文件:jar cf test.jar test
該命令沒有顯示壓縮過程,執行結果是將當前路徑下的test路徑下的全部內容生成一個test.jar文件。如果當前目錄中已經存在test.jar文件,那么該文件將被覆蓋
2 創建JAR文件,并顯示壓縮過程:jar cvf test.jar test
3 不使用清單文件:jar cvfM test.jar test
M選項表明不生成清單文件,即沒有包含META-INF/MANIFEST.MF文件
4 自定義清單文件內容:jar cvfm test.jar manifest.mf test
m選項指定讀取用戶清單文件信息。清單文件的內容由如下格式的多個key-value對組成。
key:value
清單文件的內容格式:
每行只能定義一個key-value對,每行的key-value對之前不能有空格,即key-value對必須頂格寫。
每組key-value對之間以“:”(英文冒號后緊跟一個英文空格)分隔,少寫了冒號或空格都是錯誤的。
文件開頭不能與空行
文件必須以一個空行結束
將上面文件保存在當前路徑下,文件名為a.txt。使用如下命令即可將清單文件中的key-value對提取到META-INF/MANIFEST.MF文件中。
jar cvfm test.jar a.txt test
5 查看JAR包內容:jar tf test.jar
6 查看JAR包詳細內容:jar tvf test.jar
7 解壓縮:jar xf test.jar
將test
8 帶提示信息解壓縮:jar xvf test.jar
9 更新JAR文件:jar uf test.jar Hello.class
更新test.jar中的Hello.class文件。如果存在,則使用新的Hello.class文件替換原來的文件;如果沒有,則把新的文件添加到test.jar文件中。
10 更新時顯式詳細信息:jar uvf test.jar Hello.class
創建可執行的JAR包
應用程序發布方式:
使用平臺相關的編譯器將整個應用編譯成平臺相關的可執行文件。這種方式常常需要第三方編譯器的支持,而且編譯生成的可執行性文件喪失了跨平臺特性,甚至可能與一定的性能下降。
為應用編輯一個批處理文件。以Windows操作系統為例,批處理文件中只需要定義如下命令:
java package.MainClass / start java package.MainClass(不保留運行Java程序的命令行窗口)
將一個應用程序制作成可執行的JAR包,通過JAR包來發布應用程序。
創建可執行的JAR包的關鍵在于:讓javaw命令知道JAR包中哪個類是主類,javaw命令可以通過運行該主類來運行程序。
jar命令與一個-e選項,該選項指定JAR包中作為程序入口的主類的類名。
jar cvfe test.jar test.Test test
上面命令把test目錄下的所有文件都壓縮到test.jar包中,并指定使用test.Test類(如果主類帶包名,此處必須指定完整類名)作為程序的入口。
運行上面的JAR包有兩種方式:
使用java命令,使用java運行時的語法:java -jar test.jar
使用javaw命令,使用javaw運行時的語法:javaw test.jar
總結
以上是生活随笔為你收集整理的java 使用jar_Java 使用JAR文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 编php矩阵求和,PHP二维数组如何求和
- 下一篇: Java用sqlit拆分小数_如何将SQ