Java 教程是为 JDK 8 编写的。本页中描述的示例和实践未利用在后续版本中引入的改进。
你可能需要在 JAR 文件的清单中包含软件包版本信息。你使用清单中的以下头提供此信息:
头 | 定义 |
---|---|
Name | 规范的名称。 |
Specification-Title | 规范的标题。 |
Specification-Version | 规范的版本。 |
Specification-Vendor | 规范的供应商。 |
Implementation-Title | 实现的标题。 |
Implementation-Version | 实现的内部版本号。 |
Implementation-Vendor | 实现的供应商。 |
可以为每个包分配一组这样的头。版本控制标题应直接显示在包的 Name 标题下。此示例显示所有版本控制头:
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.
有关包版本头的更多信息,请参阅 Package Versioning specification 。
我们希望在 MyJar.jar 的清单中包含上面示例中的头。
我们首先创建一个名为 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.
然后,我们通过输入以下命令创建名为 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.