0

我有几个部署到 nexus 服务器的 Maven 项目。我不喜欢通过 pom 文件管理他们的版本,并且已经使用 git 标签通过 git-describe 进行版本控制。

我添加了具有以下配置的git-describe maven 插件:

<plugin>
    <groupId>com.lukegb.mojo</groupId>
    <artifactId>gitdescribe-maven-plugin</artifactId>
    <version>1.3</version>
    <executions>
        <execution>
            <goals>
                <goal>gitdescribe</goal>
            </goals>
            <id>git-describe</id>
            <phase>initialize</phase>
            <configuration>
                <outputPrefix></outputPrefix>
            </configuration>
        </execution>
    </executions>
</plugin>

它非常适合mvn package跑步 - 但是当我使用时,mvn deploy我最终看到:

nexus/content/repositories/releases/me/botsko/project/${describe}/project-${describe}.jar

我试图与插件作者交谈,但已经过了几天没有回复。

如何在deploy阶段修改插件或我的配置以属性设置版本?

4

1 回答 1

0

可能有一种方法可以编辑插件,但我不熟悉 maven 插件架构的工作原理。

我通过编写一个将相同的 git-describe 值传递给 maven 部署过程的 shell 脚本解决了这个问题:

#!/bin/sh
gitvers=`git describe`
mvn deploy -Ddescribe=$gitvers-SNAPSHOT

只要确保你<version>${describe}</version>在 POM 中使用或类似的。

于 2013-11-07T01:50:57.280 回答