利用Maven添加工程版本信息及时间戳

 更新时间:2021年12月30日 10:36:31   作者:天空win  
这篇文章主要介绍了利用Maven添加工程版本信息及时间戳方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

Maven添加工程版本信息及时间戳

定义全局变量

pom文件中添加

<properties>
  <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  <maven.build.number>1.0.5</maven.build.number>
  <maven.build.timestamp.format>yyyy-MM-dd HH:mm:ss</maven.build.timestamp.format>
 </properties>

给MANIFEST.MF文件添加版本及时间戳信息

pom文件中添加

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <configuration>
     <!-- 如果是jar包值为true,如果是war包值为false -->
     <archiveClasses>false</archiveClasses>                  
     <archive>
      <manifest>
       <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
       <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
      </manifest>
      <manifestEntries>
       <Build-Number>${maven.build.number}</Build-Number>
       <Timestamp>${maven.build.timestamp}</Timestamp>
      </manifestEntries>
     </archive>
    </configuration>
   </plugin>

Maven版本发布添加上时间戳

使用插件添加时间戳

我使用的是spring boot - 2.0.3.RELEASE版本

pom中加入

<!--
加入这个 就可以直接在配置文件中取到时间戳了,注意:
由于${}方式会被maven处理。
如果你pom继承了spring-boot-starter-parent,
Spring Boot已经将maven-resources-plugins默认的${}方式改为了@@方式,例如:@timestamp@
-->
<properties>
    <project.build.version>@timestamp@</project.build.version>
</properties> 
 <build> 
        <finalName>${artifactId}_${timestamp}</finalName> 
        <plugins> 
      ..... 
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>buildnumber-maven-plugin</artifactId>
                <version>1.4</version>
                <configuration>
                    <timestampFormat>yyyyMMddHHmmss</timestampFormat>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>create-timestamp</goal>
                        </goals>
                    </execution>
                </executions>
                <inherited>false</inherited>
            </plugin>
 
        </plugins> 
       ..... 
    </build>

  

现在只需要在配置文件加入(用的的是.yml)

project:
    build:
      version: @project.build.version@<br><br>如果是.properties文件
project.build.version= @project.build.version@

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • java实现猜字母游戏

    java实现猜字母游戏

    这篇文章主要为大家详细介绍了java实现猜字母小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-03-03
  • java原装代码完成pdf在线预览和pdf打印及下载

    java原装代码完成pdf在线预览和pdf打印及下载

    本文主要介绍了java原装代码完成pdf在线预览和pdf打印及下载的方法,具有一定的参考价值,下面跟着小编一起来看下吧
    2017-02-02
  • Java字符串格式化,{}占位符根据名字替换实例

    Java字符串格式化,{}占位符根据名字替换实例

    这篇文章主要介绍了Java字符串格式化,{}占位符根据名字替换实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • JAVA HashSet和TreeSet 保证存入元素不会重复的操作

    JAVA HashSet和TreeSet 保证存入元素不会重复的操作

    这篇文章主要介绍了JAVA HashSet和TreeSet 保证存入元素不会重复的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-09-09
  • Java遍历Map键、值和获取Map大小的方法示例

    Java遍历Map键、值和获取Map大小的方法示例

    本篇文章主要介绍了Java遍历Map键、值和获取Map大小的方法示例,详细的介绍了Java遍历Map的两种实现方法和大小,具有一定的参考价值,有兴趣的可以了解一下。
    2017-01-01
  • 阅读EnumSet抽象类源码

    阅读EnumSet抽象类源码

    这篇文章主要介绍了阅读EnumSet抽象类源码,具有一定参考价值,需要的朋友可以了解下。
    2017-12-12
  • java Long==Long有趣的现象详解

    java Long==Long有趣的现象详解

    这篇文章主要给大家介绍了关于java Long==Long有趣的现象的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-09-09
  • Java NIO缓冲区Buffer基础教程示例

    Java NIO缓冲区Buffer基础教程示例

    这篇文章主要介绍了Java NIO缓冲区Buffer基础教程示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-10-10
  • 深入理解jvm启动参数

    深入理解jvm启动参数

    JVM的启动参数是在启动JVM时可以设置的一些命令行参数,本文详细的介绍了深入理解jvm启动参数,具有一定的参考价值,感兴趣的可以了解一下
    2023-08-08
  • 如何利用java实现生成PDF文件

    如何利用java实现生成PDF文件

    前段时间因为相关业务需求需要后台生成pdf文件,下面这篇文章主要给大家介绍了关于如何利用java实现生成PDF文件的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-10-10

最新评论