【发布时间】:2014-07-28 15:12:51
【问题描述】:
我有一个构建一系列模块的父 pom.xml。作为父 pom.xml 的一部分,我读取了一个配置并将一些变量放入构建环境:
BUILD_DATE=2014/07/24 15\:37\:06
BUILD_NUMBER=78
VERSION=GGY1.6
我希望将此信息放入清单 jar 文件中。我这样做如下:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<finalName>atf</finalName>
<archive>
<manifestEntries>
<Built-Date>${maven.build.timestamp}</Built-Date>
<Version>${VERSION}B${BUILD_NUMBER}</Version>
</manifestEntries>
</archive>
</configuration>
</plugin>
我不确定这应该进入 pom.xml 的哪个部分。我已将其置于构建阶段,在某些模块中这可以正常工作,但在其他模块中,它在清单中显示为:
Created-By: Apache Maven 3.0.5
Built-Date: 28/07/2014-16:00
Version: ${VERSION}B${BUILD_NUMBER}
Archiver-Version: Plexus Archiver
在 pom.xml 中是否有特定位置我需要放置 maven-jar-plugin 以便它获取父级创建的变量?
【问题讨论】:
-
试试
${env.VERSION},虽然我不太确定这会奏效。您应该通过传入MAVEN_OPTS=-DVERSION=$VERSION -DBUILD_NUMBER=$BUILD_NUMBER将这些作为参数传递给 JVM。
标签: maven jar manifest.mf