文档

Java™ 教程
隐藏目录
封装JAR文件中的包
路径:部署
课程:使用JAR文件打包程序
章节:使用清单文件:基础知识

在JAR文件中封装包

JAR文件中的包可以选择性地进行封装,这意味着该包中定义的所有类必须存档在同一个JAR文件中。例如,您可能希望封装一个包,以确保软件中的类的版本一致性。

通过在清单中添加Sealed头来在JAR文件中封装包,其一般形式为:

Name: myCompany/myPackage/
Sealed: true

myCompany/myPackage/是要封装的包的名称。

注意包名必须以“/”结尾。

示例

我们希望在JAR文件MyJar.jar中封装两个包firstPackagesecondPackage

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

Name: myCompany/firstPackage/
Sealed: true

Name: myCompany/secondPackage/
Sealed: true

警告: 文本文件必须以新行或回车符结束。如果最后一行没有以新行或回车符结束,则最后一行将无法正确解析。

然后,我们通过输入以下命令创建名为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: myCompany/firstPackage/
Sealed: true
Name: myCompany/secondPackage/
Sealed: true

封装JAR文件

如果要确保一个包中的所有类来自同一代码源,请使用JAR封装。封装的JAR指定该JAR定义的所有包都是封装的,除非在清单条目中针对特定包进行覆盖。

要封装JAR文件,请在清单头中使用Sealed,并将值设置为true。例如:

Sealed: true

这指定该存档中的所有包都是封装的,除非在清单条目中针对特定包进行明确覆盖。


上一页: 设置包版本信息
下一页: 使用清单属性增强安全性