显现
默认清单
Maven Archiver 创建的默认清单将包含以下信息:
Manifest-Version: 1.0
Created-By: Apache Maven ${maven.version}
Build-Jdk: ${java.version}
注意:不Build-Jdk考虑工具链配置。它与运行 Maven 实例的 JDK 版本相同。
添加实施和规范详细信息
从 2.1 版开始,Maven Archiver 默认不再在清单中创建实施和规范详细信息。如果您希望它们出现在清单中,则必须在配置中明确说明。
注意:因为这是 Maven Archiver 的最新变化,不同的插件可能已经开始使用它,也可能还没有开始使用它。请检查您要使用的插件的文档。在此示例中,我们使用 maven-jar-plugin 2.1,这是该插件的第一个使用此新功能的版本。
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.1</version>
...
<configuration>
<archive>
<manifest>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
<addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
</manifest>
</archive>
</configuration>
...
</plugin>
</plugins>
</build>
...
</project>
生成的清单将包含以下信息:
Manifest-Version: 1.0
Created-By: Apache Maven ${maven.version}
Build-Jdk: ${java.version}
规范标题:${project.name}
规范版本:${project.artifact.selectedVersion.majorVersion}.${project.artifact.selectedVersion.minorVersion}
规范供应商:${project.organization.name}
实施标题:${project.name}
实施版本:${project.version}
实施供应商:${project.organization.name}
注意:如果您的 pom.xml 没有<organization>/<name>元素,则Specification-Vendor和Implementation-Vendor条目将不在清单中。



