Java Maven-如何在任何模块上重建git修订号模块';s型
我对maven有点陌生,遇到了一个我自己无法解决的问题 我已经为一个大项目编写了一个简单的模块,它跟踪git修订号,添加时间戳并将这些属性转储到.properties文件中。这个项目只是一个pom.xml文件,没有java类,只有一个project.properties文件。我想将这个模块作为一个依赖项添加到主项目pom.xml文件中,但它只重建一次(因为Maven没有检测到任何更改,所以不会再次重建它) 如何在每次重建项目的任何模块时强制重建此模块?我可以在projectpom.xml文件中这样做,还是在Jenkins中设置?或者我用一种完全错误的方式处理这个问题 下面是我的pom.xml文件的片段:Java Maven-如何在任何模块上重建git修订号模块';s型,java,git,maven,version,rebuild,Java,Git,Maven,Version,Rebuild,我对maven有点陌生,遇到了一个我自己无法解决的问题 我已经为一个大项目编写了一个简单的模块,它跟踪git修订号,添加时间戳并将这些属性转储到.properties文件中。这个项目只是一个pom.xml文件,没有java类,只有一个project.properties文件。我想将这个模块作为一个依赖项添加到主项目pom.xml文件中,但它只重建一次(因为Maven没有检测到任何更改,所以不会再次重建它) 如何在每次重建项目的任何模块时强制重建此模块?我可以在projectpom.xml文件中这
<build>
<plugins>
<!-- enable ${timestamp} variable -->
<plugin>
<groupId>com.keyboardsamurais.maven</groupId>
<artifactId>maven-timestamp-plugin</artifactId>
<version>1.0</version>
<configuration>
<propertyName>timestamp</propertyName>
<timestampPattern>dd.MM.yyyy HH:mm</timestampPattern>
</configuration>
<executions>
<execution>
<goals>
<goal>create</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- enable JGit plugin -->
<plugin>
<groupId>ru.concerteza.buildnumber</groupId>
<artifactId>maven-jgit-buildnumber-plugin</artifactId>
<version>1.2.7</version>
<executions>
<execution>
<id>git-buildnumber</id>
<goals>
<goal>extract-buildnumber</goal>
</goals>
<phase>initialize</phase>
</execution>
</executions>
</plugin>
<!-- write project properties to file -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<version>1.0-alpha-2</version>
<executions>
<execution>
<phase>prepare-package</phase>
<goals>
<goal>write-project-properties</goal>
</goals>
<configuration>
<outputFile>${basedir}/target/classes/project.properties</outputFile>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
com.keyboardsamurais.maven
maven时间戳插件
1
时间戳
年月日HH:MM
创造
ru.concerteza.buildnumber
maven jgit buildnumber插件
1.2.7
git buildnumber
提取buildnumber
初始化
org.codehaus.mojo
属性maven插件
1.0-α-2
准备包装
写入项目属性
${basedir}/target/classes/project.properties
干杯,
乔尼好的,问题解决了(感谢irc.codehaus.org上的#maven的邓)。现在我有了主要的pom和两个模块:版本跟踪器和通用。在主pom中,我对版本跟踪器建立依赖关系,在公共模块的pom中,我添加主pom作为父项(因此,公共继承对版本跟踪器的依赖关系)
在这个阶段,我运行mvncleanpackage-pl:common-am
,并且每次更新我的project.properties文件。谢谢,邓:)
我还有一些其他问题,但这个问题已经解决了:)