我有一个项目,它是使用Maven程序集插件构建的。
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>我有一个文件BUILD.txt,它包含当前的版本号。
当我调用mvn assembly:single时,我希望maven-assembly-plugin生成一个名为myproduct-1.0-SNAPSHOT.BUILD.jar的JAR文件(所有依赖项),其中构建是来自BUILD.txt的文本(也就是说,如果BUILD.txt包含172个,则结果JAR应该称为myproduct-1.0-SNAPSHOT.172.jar)。
如何从BUILD.txt读取文本,以便在程序集插件的finalName设置中使用它?
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<finalName>${project.build.finalName}.${build}.jar</finalName
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>发布于 2015-11-27 09:38:57
方法1
BUILD.txt更改为包含buildNumber=NNN${buildNumber}用于<finalName>方法2
BUILD.txt了${buildNumber}用于<finalName>发布于 2015-11-27 09:39:16
尝尝这个
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<finalName>${project.build.finalName}.${build}.jar</finalName
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<appendAssemblyId>false</appendAssemblyId>
</plugin>使用appendAssemblyId,您将避免使用jar-with-dependencies后缀。您应该以属性文件的形式生成BUILD.txt,然后以pom.xml中的普通属性文件的形式访问它。
发布于 2015-11-27 09:39:53
你可以这样做:
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>buildnumber-maven-plugin</artifactId>
...将其放入您的pom (构建部分),然后将其配置为访问您的scm。然后定义您的bundleFileName,例如:
<bundleFileName>${project.artifactId}-${project.version}.jar</bundleFileName>https://stackoverflow.com/questions/33954231
复制相似问题