将当前的Git分支放入项目版本中

12

我想将当前Git分支放入POM XML的版本字段中。我在互联网上找到了一些帖子,建议做如下操作:

<version>${scm.version}</version>

但是这似乎在Git上不起作用。还有其他解决方案吗?


可能是从Git分支派生Maven构件版本的重复问题。 - Aldian
2个回答

18

可以使用Maven Git Commit ID插件

这很简单。您可以使用它来获取Git分支

${git.branch}

所以在你的情况下,它会变成:

<version>${git.branch}</version>

9
很不幸,在一个多模块的Maven项目中这个方法行不通,因为反应器在任何插件执行之前就已经执行了,并且它需要版本号被设置为常数,否则就会失败。 - Aldian
非常好!谢谢。 - Deepanshu Rathi
这实际上是不被支持的,这里有一个解决方法但不建议使用。https://github.com/git-commit-id/git-commit-id-maven-plugin/issues/256#issuecomment-321476196 - Qianlong

0
我为这个行为创建了一个插件(并通过扩展将Sonar链接到我的Maven项目)。
你需要做的唯一事情就是在你的pom.xml中添加以下插件。
<plugin>
    <groupId>com.viae-it.maven</groupId>
    <artifactId>sonar-maven-plugin</artifactId>
     <version>LATEST</version>
</plugin>

调用插件设置Git分支。
mvn com.viae-it.maven:sonar-maven-plugin:set-git-branch

然后您可以使用sonar.branch属性


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接