7

作为 Maven 构建的一部分,是否有一个插件(或另一种简单的方法)来生成一个“随机”数字?我想将此数字分配给一个属性,然后我可以在pom.xml文件中将其用于其他目的,例如过滤器值。

该数字不必是完全随机的(因此是引号),使用当前时间戳作为种子的东西完全可以。

4

3 回答 3

9

The default installation of maven offers a variable named maven.build.timestamp, which gives you a timestamp. You can control the format with

  <properties>
    <maven.build.timestamp.format>yyyyMMdd-HHmm</maven.build.timestamp.format>
  </properties>

which follows the SimpleDateFormat rules. So, you can simply just use ${maven.build.timestamp} to get a formatted timestamp :)

http://maven.apache.org/guides/introduction/introduction-to-the-pom.html#Available_Variables

于 2013-03-27T09:39:57.713 回答
3

您可以使用时间戳 maven 插件:http ://code.google.com/p/maven-timestamp-plugin/

它以您喜欢的格式在 Maven 属性中生成时间戳。

于 2013-03-27T09:43:32.113 回答
0

您可以使用randomid-maven-plugin

  <plugin>
    <groupId>org.infrastructurebuilder.maven</groupId>
    <artifactId>randomid-maven-plugin</artifactId>
    <version>0.9.2</version> <!-- r
    <configuration>
      <randomConfigs>
        <randomConfig>
          <name>random</name> <!-- Default value -->
          <length>16</length>
          <lower>2</lower>
        </randomConfig>
      </randomConfigs>
    </configuration>
  </plugin>

您可以更改特殊字符集、长度等,它会让您生成一个随机 UUID 作为属性。

请注意,这产生不可重复的构建。这就是随机的本质。但是,如果您只是注入一个将在下游使用但对可重复性无关紧要的值,那么这将起到作用。

于 2021-10-16T12:23:57.857 回答