女朋友问的那些问题—Maven打包时maven.build.timestamp的时区有问题!

简介: 打包时遇到的时区问题,这个问题其实也就是一个组件问题,既然自带组件解决不了问题,那么我们就用一个其他的组件来替代。

【起因】说一下要实现的效果


女朋友最近接到手里的任务就是要将Maven打的包设置成xxx-2021209252204.jar,因为是springboot项目,网上的例子其实有很多。

开始时使用了maven自带的时间插件,直接在properties标签中加入时间格式的设置,如下:

<properties>
    <maven.build.timestamp.format>yyyyMMddHHmmss</maven.build.timestamp.format>
</properties>

随后在build标签中指定filename即可。

<build>
    <finalName> ${project.artifactId}-${maven.build.timestamp}</finalName>
</build>

就这样试了试,结果确实打包成功了,可没想到maven自带时间组件时区是只能使用UTC,没办法,只能找找帮手了。


【问题】打包时遇到的时区问题


这个问题其实也就是一个组件问题,既然自带组件解决不了问题,那么我们就用一个其他的组件来替代好了。

于是将buildnubmer-maven-plugin推给她,并且将一定的配置项一并发过去,如下:


<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>build-helper-maven-plugin</artifactId>
    <version>3.2.0</version>
    <executions>
        <execution>
            <id>timestamp-property</id>
            <goals>
                <goal>timestamp-property</goal>
            </goals>
            <configuration>
                <name>build.time</name>
                <pattern>yyyyMMddHHmm</pattern>
                <locale>zh_CN</locale>
                <timeZone>GMT+8</timeZone>
            </configuration>
        </execution>
    </executions>
</plugin>


特地查了查这个插件的版本,3.2.0就是当前的最新版本了,用起来应该不会有什么大问题了,毕竟就是格式化一个时间。

这里还要操作filename标签内容,如下:


<finalName>${project.artifactId}-${build.time}</finalName>

要将maven.build.timestamp替换成build.time,因为要使用buildnubmer-maven-plugin组件中声明的时间串。


【结果】


非常简单,没有生气,没有分手,谢天谢地。

这个专栏是为了统计那些女朋友问的一些问题,不知道吵了多少架,这次正好记录一下。


目录
相关文章
|
18天前
|
Java 应用服务中间件 Maven
Maven的三种项目打包方式——pom,jar,war的区别
Maven 提供了多种打包方式,分别适用于不同类型的项目。pom 用于父项目或聚合项目,便于项目的结构和依赖管理;jar 用于Java类库或可执行的Java应用程序;war 则专用于Java Web应用程序的部署。理解这些打包方式的用途和特点,可以帮助开发者更好地配置和管理Maven项目,确保构建和部署过程的顺利进行。无论是单模块项目还是多模块项目,选择合适的打包方式对于项目的成功至关重要。
53 3
|
1月前
|
Java Maven Android开发
【Azure Developer】VS Code打包Java maven Project 遇见 BUILD FAILURE
Unknown lifecycle phase "lean". You must specify a valid lifecycle phase or a goal in the format <plugin-prefix>:<goal> or <plugin-group-id>:<plugin-artifact-id>[:<plugin-version>]:<goal>
|
2月前
|
缓存 IDE Java
idea的maven项目打包时没有source下的文件
【10月更文挑战第21天】idea的maven项目打包时没有source下的文件
45 1
|
2月前
|
Java 测试技术 Maven
maven 打包命令
maven 打包命令
27 6
|
2月前
|
Java Linux Maven
IDEA如何用maven打包(界面和命令两种方式)
【10月更文挑战第14天】本文介绍了两种Maven项目打包方法:命令行与IDEA界面。首先确保已安装Maven并配置环境变量,通过`mvn -v`检查安装。命令行打包需进入项目目录,执行`mvn package`,之后在`target`目录查看结果。IDEA打包则需配置Maven路径,打开Maven Projects窗口,双击Lifecycle下的`package`阶段,同样在`target`目录查找生成文件,并在Build窗口查看日志以排查问题。
856 1
|
6月前
|
Java 测试技术 Maven
Maven打包使用多线程加速构建过程
Maven打包使用多线程加速构建过程
905 0
|
2月前
|
Java Shell Maven
Flink-11 Flink Java 3分钟上手 打包Flink 提交任务至服务器执行 JobSubmit Maven打包Ja配置 maven-shade-plugin
Flink-11 Flink Java 3分钟上手 打包Flink 提交任务至服务器执行 JobSubmit Maven打包Ja配置 maven-shade-plugin
119 4
|
2月前
|
Java Maven
用graalvm将maven项目打包成可执行文件
本文介绍了如何使用GraalVM将Maven项目打包成可执行文件,包括引入依赖和插件、编写代码、执行打包命令以及运行查看结果的完整过程。
152 0
用graalvm将maven项目打包成可执行文件
|
2月前
|
Java Maven
maven打包出现没有主类的原因,详细分析并解决
本文分析了使用Maven打包Java应用时找不到或无法加载主类的问题,通常是由于未配置主类或打包时未包含依赖,并通过添加Maven插件解决了依赖问题,同时指出了JavaFX应用可能遇到的运行时组件缺失的错误。
165 0
maven打包出现没有主类的原因,详细分析并解决
|
7月前
|
Java Maven
SpringBoot项目的用maven插件打包报Test错误
SpringBoot项目的用maven插件打包报Test错误
126 1