如何将maven项目版本放入war文件清单中?

我需要让Maven将POM文件中的版本号插入位于/WEB-INF/manifest.mf下的WAR文件中的清单中。

我该怎么做呢? 我能够使用maven-jar-plugin轻松地在JAR文件中提交文档以进行此操作,但这不适用于WAR文件。

谢谢您的帮助!

使用maven-war-plugin计算出来。 请参阅以下配置:

 org.apache.maven.plugins maven-war-plugin 2.1.1    ${project.version}     

或者您可以使用addDefaultImplementationEntriesaddDefaultSpecificationEntries标志,这些标志将添加几个条目,包括project.version属性。

addDefaultImplementationEntries

 Implementation-Title: ${project.name} Implementation-Version: ${project.version} Implementation-Vendor-Id: ${project.groupId} Implementation-Vendor: ${project.organization.name} Implementation-URL: ${project.url} 

addDefaultSpecificationEntries

 Specification-Title: ${project.name} Specification-Version: ${project.version} Specification-Vendor: ${project.organization.name} 

两者的默认值均为false。 如果未定义属性(例如project.organization.name ),则该行将从清单中排除。

这可以进入maven-war-plugin配置,如下所示:

  maven-war-plugin 2.2    true     

${project.version}放在您希望版本所在的manifest.mf中。 为了实现这一点,我相信您需要资源插件,以便manven将“过滤”资源,因为它们包含在您的war文件中。