在Maven中使用过滤复制资源时,我想将唯一的快照版本添加到资源文件中。

我已启用过滤:

...
<name>My Application</name>
<version>0.1-SNAPSHOT</version>
...
<build>
  <resources>
    <resource>
      <directory>src/main/resources</directory>
      <filtering>true</filtering>
      ...
    </resource>
  </resources>
  ...
</build>

这是我的资源文件:

application.name=${name}
application.Version=${version}

跑步后 mvn resources:resources, ,这是结果:

application.name=My Application
application.Version=0.1-SNAPSHOT

但我真正想要的是:

application.name=My Application
application.Version=0.1-20120310.143733-1
有帮助吗?

解决方案

从版本2.1.0-M1开始,Maven支持在pom中获取构建时间戳的特殊语法。xml,查看doc 这里:

<project>
  ...
  <properties>
    <maven.build.timestamp.format>yyyyMMdd.HHmmss</maven.build.timestamp.format>
  </properties>
  ...
</project>

或者,您可以使用 buildnumber-maven-插件.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top