JAR (Java ARchive) 是 Java 平台專用的歸檔文件格式,本質上是 ZIP 壓縮包,副檔名 .jar。
| 特性 | ZIP | JAR |
|---|---|---|
| 壓縮算法 | Deflate | Deflate (可選無壓縮存儲類文件) |
| 清單文件 | 無 | META-INF/MANIFEST.MF (自動生成) |
| 主要用途 | 通用壓縮 | 類庫分發、可執行程序、擴展包 |
Manifest-Version: 1.0
Created-By: 1.8.0_292 (Oracle Corporation)
Main-Class: com.example.MainEntry # 可執行 JAR 入口
Class-Path: lib/dependency1.jar lib/dependency2.jar # 依賴聲明
jar cvf mylib.jar com/,供其他專案引用。java -jar app.jar,無需指定 -cp 與主類。module-info.class。
jar cvf app.jar -C build/classes . # 打包
jar uvf app.jar com/new/Class.class # 更新單個類
jar xvf app.jar # 解包
jar tvf app.jar # 查看目錄
java -jar app.jar # 運行