Introduction
JAR文件是一种基于流行zip文件格式的文件格式,用于将多个文件聚合为一个文件。JAR文件本质上是一个包含可选meta-info目录的压缩文件。JAR文件可以由命令行JAR工具创建,也可以使用java平台中的java.util.jar API创建。是特定平台上的任何合法文件名。
The META-INF directory
java 2平台识别并解释了meta-inf目录中的下列文件/目录,以配置应用程序、扩展、类加载器和服务:
• MANIFEST.MF
清单文件,用于定义扩展名和包相关数据。
• INDEX.LIST
该文件由JAR工具的新“-i”选项生成,该选项包含应用程序或扩展中定义的包的位置信息。它是jarindex实现的一部分,类加载器使用它来加快类加载过程。
• x.SF
JAR文件的签名文件。‘X’代表基本文件名。
• x.DSA
与具有相同基本文件名的签名文件关联的签名块文件。该文件存储相应签名文件的数字签名
Name-Value pairs and Sections键值对
在我们详细了解各个配置文件的内容之前,需要定义一些格式约定。在大多数情况下,清单文件和签名文件中包含的信息被表示为所谓的“名称:值”对,这是rfc 822标准启发的。我们也称这些对为头或属性。