设置软件包版本信息

您可能需要在 JAR 文件的清单中包含软件包版本信息。您可以在清单中使用以下 Headers 提供此信息:

*清单中的标题 *

HeaderDefinition
Name规范名称。
Specification\-Title规范的标题。
Specification\-Version规范的版本。
Specification\-Vendor规范的供应商。
Implementation\-Title实现的标题。
Implementation\-Version实现的内部版本号。
Implementation\-Vendor实现的供应商。

可以将一组这样的标题分配给每个程序包。版本 Headers 应直接出现在软件包的NameHeaders 下方。本示例显示所有版本控制 Headers:

Name: java/util/
Specification-Title: Java Utility Classes
Specification-Version: 1.2
Specification-Vendor: Example Tech, Inc.
Implementation-Title: java.util
Implementation-Version: build57
Implementation-Vendor: Example Tech, Inc.

有关软件包版本 Headers 的更多信息,请参见软件包版本说明

An Example

我们想在 MyJar.jar 清单的上面的示例中包含 Headers。

我们首先创建一个名为Manifest\.txt的文本文件,其内容如下:

Name: java/util/
Specification-Title: Java Utility Classes
Specification-Version: 1.2
Specification-Vendor: Example Tech, Inc.
Implementation-Title: java.util 
Implementation-Version: build57
Implementation-Vendor: Example Tech, Inc.

Warning:

文本文件必须以换行符或回车符结尾。如果最后一行未以新行或回车结尾,则将无法正确解析。

然后,通过 Importing 以下命令,创建一个名为MyJar\.jar的 JAR 文件:

jar cfm MyJar.jar Manifest.txt MyPackage/*.class

这将创建带有清单的 JAR 文件,其中包含以下内容:

Manifest-Version: 1.0
Created-By: 1.7.0_06 (Oracle Corporation)
Name: java/util/
Specification-Title: Java Utility Classes
Specification-Version: 1.2
Specification-Vendor: Example Tech, Inc.
Implementation-Title: java.util 
Implementation-Version: build57
Implementation-Vendor: Example Tech, Inc.