欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

SpringBoot如何獲得Maven-pom中版本號和編譯時間戳

這篇文章主要介紹了SpringBoot如何獲得Maven-pom中版本號和編譯時間戳,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務,包含不限于成都網(wǎng)站設計、成都網(wǎng)站制作、邵東網(wǎng)絡推廣、成都小程序開發(fā)、邵東網(wǎng)絡營銷、邵東企業(yè)策劃、邵東品牌公關、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務,您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)為所有大學生創(chuàng)業(yè)者提供邵東建站搭建服務,24小時服務熱線:13518219792,官方網(wǎng)址:aaarwkj.com

SpringBoot項目獲得編譯時間戳和版本號,然后提供接口大概分為以下步驟:

  • 在pom文件中獲取maven的編譯時間戳

  • 配置pom,用maven中的屬性渲染資源文件application.yml

  • 提供接口

Maven中獲得編譯時間

在 pom文件properties 中添加兩個屬性

<properties>
 <!--maven.build.timestamp保存了maven編譯時間戳-->
 <timestamp>${maven.build.timestamp}</timestamp>
 <!--指定時間格式--> 
 <maven.build.timestamp.format>yyyy-MM-dd HH:mm:ss</maven.build.timestamp.format>
</properties>

用Maven屬性渲染application.yml

在pom文件build中配置

<build>
 <resources>
  <resource>
   <directory>src/main/resources</directory>
   <filtering>true</filtering>
  </resource>
 </resources>
</build>

在application.yml中配置

不能使用${}

app:
 version: @project.version@
 build:
 time: @timestamp@

提供接口

創(chuàng)建AppController,提供接口 Get /app

package cn.yshow.modules.sys.controller;

import cn.yshow.common.utils.restResult.RestResult;
import cn.yshow.common.utils.restResult.ResultGenerator;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.HashMap;
import java.util.Map;

/**
 * @author zhaod zhaodongxx@outlook.com
 * @version v1.0
 * @since 2018/12/16 16:19
 */
@Slf4j
@RestController
@RequestMapping("/app")
public class AppController {
 /**
  * 當前版本
  */
 @Value("${app.version}")
 private String version;
 /**
  * 打包時間
  */
 @Value("${app.build.time}")
 private String buildTime;

 @GetMapping
 public RestResult uploadImg() {
  Map<String,String> ret = new HashMap<>();
  ret.put("version",version);
  ret.put("buildTime",buildTime);
  
  //RestResult是我封裝的返回對象
  return ResultGenerator.genSuccessResult(ret);
 }
}

測試

用YAPI測試如下

SpringBoot如何獲得Maven-pom中版本號和編譯時間戳

maven.build.timestamp時區(qū)錯誤解決方案

在Maven 3.2.2+中, maven.build.timestamp已被重新定義,顯示UTC中的時間,比中國時間慢8個小時??梢允褂貌寮uild-helper-maven-plugin獲得本時區(qū)的時間

在plugins塊添加插件,這個配置與官網(wǎng)不一樣,按照官網(wǎng)的配置方式會報錯

<project>
 <build>
  <!--指定包名 -->
  <finalName>
   ${project.artifactId}-${project.version}-${build.time}
  </finalName>
  <plugins>
   <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>
     </execution>
    </executions>
    <configuration>
     <name>build.time</name>
     <pattern>yyyy-MM-dd HH:mm</pattern>
     <timeZone>GMT+8</timeZone>
    </configuration>
   </plugin>
  </plugins>
 </build>
</project>

經過上述處理后,屬性${build.time}已經代表GMT-8時區(qū)的時間

application.yml配置如下

app:
 version: @project.version@
 build:
 time: @build.time@

IDEA 編譯項目不會調用 maven 生命周期,導致安裝的 plugin 不被執(zhí)行。雖然 maven 自帶變量可以被替換,但是自定義變量卻不會被替換。

可以將 IDEA 的 Build 與 maven goal 綁定起來,在 build 之前執(zhí)行 maven goal,IDEA 右側 Maven Projects -> LifeCycle -> compile 勾選 Execute After Build和Execute After Rebuild ,如下圖

SpringBoot如何獲得Maven-pom中版本號和編譯時間戳

把時間戳加到包名

兩種方法不要重復,否則

方法一:把時間戳加到版本號

<project>
 <versioin>
  0.0.5.${build.time}
 </version>
</project>

方法二:把時間戳直接加到包名

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

感謝你能夠認真閱讀完這篇文章,希望小編分享的“SpringBoot如何獲得Maven-pom中版本號和編譯時間戳”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關知識等著你來學習!

文章題目:SpringBoot如何獲得Maven-pom中版本號和編譯時間戳
路徑分享:http://aaarwkj.com/article22/isgpcc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供用戶體驗、網(wǎng)站排名、網(wǎng)站導航外貿建站、網(wǎng)站設計、

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設網(wǎng)站維護公司
国产原创av剧情在线观看| 禁止18岁以下观看的视频| 免费在线黄色生活大片| 日韩欧美亚洲福利在线| 在线一区二区三区成人观看| 日本精彩视频一区二区| 日韩精品亚洲一级在线观看| 日韩一区二区三区av在线 | 国产婷婷成人久久av免费高清| 亚洲综合一区二区三区不卡| 国产精品大全中文字幕| 小黄片视频免费在线播放| 日韩一二三四区免费观看| 丰满少妇被激烈的插进去| 高清免费在线自偷自拍| 日日干天天日夜夜操| 99久久中文字幕伊人| 日本免费在线不卡一区二区| 福利一区二区在线视频| 亚洲日本一区二区三区电影| 国产三级精品大乳人妇| 亚洲精品偷拍在线观看| 91精品一区二区三区91人妻| 欧美黄片完整版在线观看| 亚洲一区二区三区精品福利| 内射久久一区二区亚洲| 97在线视频这里只有精品| 日本高清精品视频免费| 欧美亚洲另类不卡在线| 亚洲一区欧美日韩91| 日韩精品中文字幕免费人妻| 日本一区二区视频播放网站| 亚洲一区二区三区av电影| 日本一区二区在线高清| 在线观看国产自拍精品| 欧美日韩精品亚洲成人精品| 精品丝袜熟女一区二区三区| 麻豆视传媒短视频网站免费| 国产精品三级高清在线| 亚洲精品午夜久久久伊人| 欧美日韩黄色人人小视频|