JAR文件格式基於流行的ZIP文件格式。與ZIP文件不同,JAR文件不僅用於壓縮和發布,還用於部署和封裝庫、組件和插件,可以被編譯器、JVM等工具直接使用。JAR中包含壹些特殊的文件,比如清單和部署描述符,用來指示工具如何處理特定的JAR。
JAR文件可用於:
□用於發布和使用類庫。
□作為應用和擴展的構建模塊
□作為組件、小程序或插件的部署單元
□用於包裝與部件相關的輔助資源。
JAR文件格式提供了許多優勢和功能,其中許多是ZIP或TAR等傳統壓縮格式所不具備的。它們包括:
安全。您可以對JAR文件的內容進行數字簽名。這樣,可以識別簽名的工具就可以選擇性地授予妳軟件安全權限,這是其他文件做不到的,它還可以檢測代碼是否被篡改。
減少下載時間。如果壹個applet被捆綁到壹個JAR文件中,瀏覽器可以在壹個HTTP事務中下載applet的類文件和相關資源,而不是為每個文件打開壹個新的連接。
壓縮。JAR格式允許妳壓縮文件以提高存儲效率。
傳輸平臺擴展。Java擴展框架(Java Extensions Framework)提供了壹種向Java核心平臺添加功能的方式,這些擴展與JAR文件打包在壹起(Java 3D和JavaMail就是Sun開發的擴展的例子)。
包裝密封。存儲在JAR文件中的包可以被密封,以增強版本的壹致性和安全性。密封壹個包意味著必須在同壹個JAR文件中找到包中的所有類。
包版本控制。JAR文件可以包含關於它所包含的文件的數據,例如供應商和版本信息。
便攜性。處理JAR文件的機制是Java平臺核心API的標準部分。