maven 打包時間戳問題
maven 打包時,可以生成時間戳屬性,利用該屬性來組裝包名。
<version>5.0.${build.time}B</version> <properties> <maven.build.timestamp.format>yyyyMMddHHmmss</maven.build.timestamp.format> </properties>
對資源文件開啟 filtering 功能,資源文件中的 POM 變量在打包過程中會被自動替換。在 java 代碼中訪問 properties 資源文件,就可以取到版本號。
<resource> <directory>src/main/resources</directory> <filtering>true</filtering> </resource>
但是,這個時間戳屬性有個問題,生成的時間 ${maven.build.timestamp} 是 UTC 時間,無法修改時區(qū)。網上找到一個辦法,可以用插件解決這個問題。
<plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>build-helper-maven-plugin</artifactId> <version>1.8</version> <executions> <execution> <id>timestamp-property</id> <goals> <goal>timestamp-property</goal> </goals> <configuration> <name>build.time</name> <pattern>yyyyMMdd'.'HHmm</pattern> <timeZone>GMT+8</timeZone> </configuration> </execution> </executions> </plugin>
該插件生成的屬性 ${build.time} 已經是本地時區(qū)。
但是,在 IDEA 中, Build Projects ,再 Build Artifacts... ,屬性文件中的 ${project.version} 并沒有被替換。
摸索了一陣,發(fā)現 IDEA Build Projects 并不會調用 maven 生命周期,導致 plugin 不被執(zhí)行。雖然 maven 自帶變量可以被替換,但是自定義變量卻不會被替換。
使用工具按鈕的 maven install 打包,資源中的變量可以被正常替換。
還有一個方法,可以將 IDEA 的 Build 與 maven goal 綁定起來:
圖1 綁定 maven goal
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
java多線程編程之使用thread類創(chuàng)建線程
在Java中創(chuàng)建線程有兩種方法:使用Thread類和使用Runnable接口。在使用Runnable接口時需要建立一個Thread實例2014-01-01Java設計模式之策略模式_動力節(jié)點Java學院整理
策略模式是對算法的封裝,把一系列的算法分別封裝到對應的類中,并且這些類實現相同的接口,相互之間可以替換。接下來通過本文給大家分享Java設計模式之策略模式,感興趣的朋友一起看看吧2017-08-08關于fastjson的@JSONField注解的一些問題(詳解)
下面小編就為大家?guī)硪黄P于fastjson的@JSONField注解的一些問題(詳解)。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-02-02關于SpringBoot整合redis使用Lettuce客戶端超時問題
使用到Lettuce連接redis,一段時間后不操作,再去操作redis,會報連接超時錯誤,在其重連后又可使用,糾結是什么原因導致的呢,下面小編給大家?guī)砹薙pringBoot整合redis使用Lettuce客戶端超時問題及解決方案,一起看看吧2021-08-08springboot集成RestTemplate及常見的用法說明
這篇文章主要介紹了springboot集成RestTemplate及常見的用法說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-10-10Spring:@Async注解和AsyncResult與CompletableFuture使用問題
這篇文章主要介紹了Spring:@Async注解和AsyncResult與CompletableFuture使用問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-08-08SpringBoot2.x設置Session失效時間及失效跳轉方式
這篇文章主要介紹了SpringBoot2.x設置Session失效時間及失效跳轉方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-03-03