ben*_*rre 6 versioning mercurial maven buildnumber-maven-plugin
我们使用Maven作为构建版本,使用Mercurial作为我们的变更集.虽然我们的软件已经处理了主要版本,但我们真的希望能够知道Mercurial变更集用于构建运行我们软件的任何服务器.
有没有人知道在Maven中获取Mercurial中工作目录的变更集并将其放入属性文件中的方法,以便我们可以在我们的应用程序中的某个地方显示它,当sys管理员对当前运行的版本进行"健全性检查"时?
您可以创建一个更新挂钩,将更改集ID输出到未版本化的.properties文件中:
[hooks]
update = echo changesetid=$HG_PARENT1 > version.properties
Run Code Online (Sandbox Code Playgroud)
这种方法的优点是,如果需要,您可以轻松地自定义此值,并且构建保持独立于版本控制系统(或缺少版本控制系统).
如果你想在生成它的Maven构建中添加一些东西,你有没有看过Buildnumber Maven插件(hgchangeset目标)或Maven Mercurial Build Number插件?
合并到你的pom.xml:
<project>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>buildnumber-maven-plugin</artifactId>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>hgchangeset</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
Run Code Online (Sandbox Code Playgroud)
然后使用设置为的属性创建一个.properties文件.例如:src/main/resources${changeSet}
revision = ${changeSet}
modificationTime = ${changeSetDate}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1740 次 |
| 最近记录: |