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

news/2024/5/20 2:51:36 标签: maven, java, gradle, bootstrap, plugin

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组件中声明的时间串。

【结果】

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

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


http://www.niftyadmin.cn/n/902632.html

相关文章

女朋友问的那些问题—帮我找一个表格树插件

theme: smartblue 小知识&#xff0c;大挑战&#xff01;本文正在参与“程序员必备小知识”创作活动。 【起因】问题的期望值 需要一款表格树插件&#xff0c;具体有着几个要求如下&#xff1a; 必须兼容IE8要可以动态加载数据操作API尽量要全一些 【问题】 基本上第一点就让很…

女朋友问的那些问题—log.info在测试环境正常打印,上了生产就废?

theme: smartblue 小知识&#xff0c;大挑战&#xff01;本文正在参与“程序员必备小知识”创作活动。 【需求】打印日志内容到控制台 女朋友今天接到的需求是测试一个方法的执行时间&#xff0c;然后就在这个方法中第一行和最后一行中输出了一下当前时间的long值&#xff0c;以…

Lombok注解应用篇【一】

theme: awesome-green 小知识&#xff0c;大挑战&#xff01;本文正在参与“程序员必备小知识”创作活动。 集成Lombok SpringBoot项目中使用Lombok是当下开发环境下常用的一款组件&#xff0c;解决了我们在开发中生成大量的getter和setter方法的问题。 Lombok提供的其他一些注…

Lombok注解应用篇【二】

theme: simplicity-green 小知识&#xff0c;大挑战&#xff01;本文正在参与“程序员必备小知识”创作活动。 书接上文 上篇文章我们写到了Data、Getter、Setter、Value、ToString几个注解&#xff0c;基本上可以在实体类中非常快捷的生成getter和setter方法了&#xff0c;当然…

Lombok注解应用篇【三】

theme: simplicity-green 小知识&#xff0c;大挑战&#xff01;本文正在参与“程序员必备小知识”创作活动。 书接上文 上篇文章我们写到了EqualsAndHashCode、NoArgsConstructor、AllArgsConstructor、RequiredArgsConstructor几个注解&#xff0c;掌握了这几个&#xff0c;就…

如何正确使用RestTemplate【一】

theme: vue-pro 小知识&#xff0c;大挑战&#xff01;本文正在参与“程序员必备小知识”创作活动。 写在前面 这次我们来一起学习一下在Java开发中如何正确的使用RestTemplate&#xff0c;并且展开描述一下RestTemplate中的各个不同功能的方法。 RestTemplate基本介绍 RestTem…

如何正确使用RestTemplate【二】

theme: vue-pro 小知识&#xff0c;大挑战&#xff01;本文正在参与“程序员必备小知识”创作活动。 复习一下下 上篇文章我们说了Get请求和HEAD请求相关的方法&#xff0c;参数我没有具体列出来&#xff0c;这点我们在之后的文章中会慢慢体现出来。 下面接着来学习吧。 RestTe…

如何正确使用RestTemplate【三】

theme: vue-pro 小知识&#xff0c;大挑战&#xff01;本文正在参与“程序员必备小知识”创作活动。 复习一下下 上篇文章我们说了POST请求和OPTIONS请求相关的方法&#xff0c;对其中的postForLocation方法和optionsForAllow方法进行了一个具体使用上的阐述&#xff0c;大家可…