【问题标题】:spring maven build number pluginspring maven 内部版本号插件
【发布时间】:2020-03-04 16:36:28
【问题描述】:

我想为我的 maven 项目提供一个内部版本号。

我在 pom.xml 中使用了如下配置:

        <!-- build number -->
        <plugin>
           <groupId>org.codehaus.mojo</groupId>
           <artifactId>buildnumber-maven-plugin</artifactId>
           <version>1.4</version>
           <executions>
             <execution>
               <phase>validate</phase>
               <goals>
                 <goal>create</goal>
               </goals>
             </execution>
           </executions>
           <configuration>
             <doCheck>false</doCheck>
             <doUpdate>false</doUpdate>
           </configuration>
        </plugin>
    </plugins>
    <finalName>${project.artifactId}-${project.version}-r${buildNumber}</finalName>
</build>
<!-- dummy scm for build number plugin -->
<scm>
   <connection>scm:git:http://127.0.0.1/dummy</connection>
   <developerConnection>scm:git:https://127.0.0.1/dummy</developerConnection>
   <tag>HEAD</tag>
   <url>http://127.0.0.1/dummy</url>
</scm>

我这样做是希望它会在某个地方存储一个内部版本号,并且每次构建都会增加它。但它的作用是使用 git commit 句柄作为内部版本号。

是否可以让内部版本号插件按我想要的方式工作?还是有一个不同的插件可以满足我的要求?或者我应该接受内部版本号插件的工作,因为使用 git 提交句柄作为内部版本号符合我的最大利益?

【问题讨论】:

  • finalName 仅适用于target 目录,但不适用于mvn installmvn deploy ...
  • 我没有看到问题,从 IDE 调用 mvn install 会在其中创建目标目录和一个 war 文件。我还没用过mvn deploy
  • 在目标目录中是但不在本地存储库 $HOME/.m2/ 中。 ...

标签: maven pom.xml versioning


【解决方案1】:

我像这样更改了 pom.xml 内部版本号配置,添加了 &lt;format&gt;:

        <!-- build number -->
        <plugin>
           <groupId>org.codehaus.mojo</groupId>
           <artifactId>buildnumber-maven-plugin</artifactId>
           <version>1.4</version>
           <executions>
             <execution>
               <phase>validate</phase>
               <goals>
                 <goal>create</goal>
               </goals>
             </execution>
           </executions>
           <configuration>
             <format>{0,number}</format>
             <items>
                <item>buildNumber</item>
             </items>
             <doCheck>false</doCheck>
             <doUpdate>false</doUpdate>
           </configuration>
        </plugin>
    </plugins>
    <finalName>${project.artifactId}-${project.version}-r${buildNumber}</finalName>
</build>
<!-- dummy scm for build number plugin -->
<scm>
   <connection>scm:git:http://127.0.0.1/dummy</connection>
   <developerConnection>scm:git:https://127.0.0.1/dummy</developerConnection>
   <tag>HEAD</tag>
   <url>http://127.0.0.1/dummy</url>
</scm>

它现在可以按我的预期工作,并将内部版本号存储在 buildNumber.properties

我从automatically incrementing a build number in a java project得到这个想法

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-07-16
    • 2011-10-20
    • 2017-05-05
    • 1970-01-01
    • 1970-01-01
    • 2011-04-25
    • 1970-01-01
    • 2012-11-22
    相关资源
    最近更新 更多