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


theme: smartblue

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

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

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

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

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

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

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

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

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

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

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

xml <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标签内容,如下:

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

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

【结果】

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

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

posted @   Ijiran  阅读(778)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· winform 绘制太阳,地球,月球 运作规律
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示