JAR 介绍-百度百科

时间:2021-02-26 12:51:18

  JAR(Java Archive,Java 归档文件)是与平台无关的文件格式,它允许将许多文件组合成一个压缩文件。为 J2EE 应用程序创建的 JAR 文件是 EAR 文件(企业 JAR 文件)。
  JAR 文件格式以流行的 ZIP 文件格式为基础。与 ZIP 文件不同的是,JAR 文件不仅用于压缩和发布,而且还用于部署和封装库、组件和插件程序,并可被像编译器和 JVM 这样的工具直接使用。在 JAR 中包含特殊的文件,如 manifests 和部署描述符,用来指示工具如何处理特定的 JAR。
  一个 JAR 文件可以用于
  □ 用于发布和使用类库
  □ 作为应用程序和扩展的构建单元
  □ 作为组件、applet 或者插件程序的部署单位
  □ 用于打包与组件相关联的辅助资源
  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 的标准部分。

常见的 jar 工具用法
  jar cf jar-file input-file...
  用一个单独的文件创建一个 JAR 文件
  jar cf jar-file dir-name
  用一个目录创建一个 JAR 文件
  jar cf0 jar-file dir-name
  创建一个未压缩的 JAR 文件
  jar uf jar-file input-file...
  更新一个 JAR 文件
  jar tf jar-file
  查看一个 JAR 文件的内容
  jar xf jar-file
  提取一个 JAR 文件的内容
  jar xf jar-file archived-file...
  从一个 JAR 文件中提取特定的文件
  java -jar app.jar
  运行一个打包为可执行 JAR 文件的应用程序