最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot應用的打包和發(fā)布實現(xiàn)

 更新時間:2023年04月02日 15:00:43   作者:_kairui  
本文主要介紹了SpringBoot應用的打包和發(fā)布實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

1. 創(chuàng)建項目(example-fast)

基于 Spring Boot 創(chuàng)建一個 WEB 項目 example-fast。

2. 編譯打包

2.1 采用 IDEA 集成的 Maven 環(huán)境來對 Spring Boot 項目編譯打包,可謂是超級 easy

在這里插入圖片描述

2.2 mvn 命令打包

# mvn clean 清理編譯
# install 打包
# -Dmaven.test.skip=true 跳過單元測試
# -P dev 指定dev配置

mvn clean install -Dmaven.test.skip=true -P dev

3. 應用發(fā)布

3.1 一行命令的演化
運行 Spring Boot 打包之后的 jar 方式也簡單,只需一行命令就行。

java -jar /usr/local/example-fast-1.0.0.jar

此時,服務是啟動了,但是不能關閉這個窗口,一旦關閉服務就停止了,不得不考慮后臺運行,并且還想看日志;

java -jar /usr/local/example-fast-1.0.0.jar > example-fast.out &

執(zhí)行啟動時,效果如下,然后就可以輕松看日志輸出了。

如果項目組中你既是研發(fā)又充當運維的角色,到這基本就完事兒了,因為相信通過熟練操作,會形成肌肉反應,你肯定能記住這一行命令。
不過,若是分工明確,生產(chǎn)權限隔離的話,一般都是運維同事來操作發(fā)布,所以還得想辦法讓運維同事省力,不得不考慮腳本化。

首先創(chuàng)建項目目錄例如 example-fast,然后分別創(chuàng)建 bin、lib、logs 目錄;把 example-fast-0.0.1-SNAPSHOT.jar 拷貝至 lib 目錄下;bin 目錄主要存放腳本。創(chuàng)建 start.sh 應用啟動腳本; stop.sh 應用停止腳本

啟動腳本(start.sh)

#!/bin/bash

#配置 Java 環(huán)境變量
export JAVA_HOME=/usr/local/java/jdk/jdk1.8.0_231
export PATH=.:$JAVA_HOME/bin:$PATH


#定義應用名
App_Name=example-fast

#定義應用所在目錄
App_Path=/home/${App_Name}

#定義可執(zhí)行文件的路徑
JAR_PATH=${App_Path}/example-fast-1.0.0.jar

#jvm啟動參數(shù)
JAVA_OPTS="-Duser.timezone=GMT+8 -server -Xms4096m -Xmx4096m  -XX:MaxMetaspaceSize=256m -Xloggc:${App_Path}/logs/${App_Name}.gc.log -XX:+UseConcMarkSweepGC -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=5 -XX:+PrintGC -XX:+PrintGCTimeStamps  -XX:+PrintGCDetails  -XX:+PrintGCApplicationStoppedTime"

#啟動JAVA進程函數(shù)
CURRENT_COUNT=`ps -ef|grep java |grep ${App_Name} |grep -vc grep`
if [ $CURRENT_COUNT -eq 0 ]
then
        Log_Name=$(echo ${App_Name}|awk  -F"-" '{ print $NF }')
        nohup java -Dfunc_type=${App_Name}  $JAVA_OPTS  -Dfile.encoding=utf-8  -jar  $JAR_PATH  > ${App_Path}/logs/${App_Name}.out  2>&1 &
  PROCESS_ID=`ps -ef | grep  "${App_Name}" |grep -v grep | awk '{ print $2 }'`
      echo " ?????啟動應用 ${App_Name} 成功,進程 id 為 ${PROCESS_ID} ????? "
else
    echo " ????? 應用 ${App_Name} 已經(jīng)被啟動了 ????? "
fi
# 執(zhí)行應用啟動 start.sh
sh start.sh

停止腳本(stop.sh)

#!/bin/bash

# 定義應用名稱
App_Name=example-fast

# 停止JAVA進程函數(shù)
echo " ????? 開始停止 ${App_Name} 應用 ????? "
ps -ef | grep ${App_Name} | grep -v grep | awk '{print$2}' | xargs kill
echo " ????? 應用 ${App_Name} 停止成功!????? "
# 執(zhí)行應用停止 stop.sh
sh stop.sh

至此,Spring Boot 項目最基本的發(fā)布方式就完事了,可以直接執(zhí)行腳本完成項目的啟動和停止,操作更簡單了!更多相關SpringBoot應用打包和發(fā)布內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Java使用雪花算法生成唯一ID的實現(xiàn)示例

    Java使用雪花算法生成唯一ID的實現(xiàn)示例

    雪花算法是 Twitter 開源的一種分布式ID生成算法,其目的是生成全局唯一的 ID,本文主要介紹了Java使用雪花算法生成唯一ID的實現(xiàn)示例,具有一定的參考價值,感興趣的可以了解一下
    2024-07-07
  • Java數(shù)組拷貝的幾種方法小結

    Java數(shù)組拷貝的幾種方法小結

    本文主要介紹了Java數(shù)組拷貝的幾種方法小結,包括for循環(huán)、System.arraycopy()、Arrays.copyOf()、Arrays.copyOfRange()和clone()方法,具有一定的參考價值,感興趣的可以了解一下
    2023-09-09
  • java讀取resource目錄下文件的方法示例

    java讀取resource目錄下文件的方法示例

    這篇文章主要介紹了利用java讀取resource目錄下文件的方法,文中給出了詳細的示例代碼,相信對大家具有一定的參考借鑒,需要的朋友們下面來一起看看吧。
    2017-02-02
  • EasyCode插件使用詳解(推薦)

    EasyCode插件使用詳解(推薦)

    EasyCode是idea的一個插件,這個插件功能很強大,今天通過本文給大家分享EasyCode插件使用詳解,需要的朋友可以參考下
    2020-09-09
  • springboot?web項目中?Set-Cookie?失敗原因及解決辦法

    springboot?web項目中?Set-Cookie?失敗原因及解決辦法

    這篇文章主要介紹了springboot?web項目中?Set-Cookie?失敗原因及解決辦法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-10-10
  • SpringCloud兩種注冊中心的實現(xiàn)

    SpringCloud兩種注冊中心的實現(xiàn)

    本文主要介紹了SpringCloud兩種注冊中心的實現(xiàn),包括服務注冊、服務拉取、負載均衡和實例權重配置等,具有一定的參考價值,感興趣的可以了解一下
    2025-01-01
  • 聊聊DecimalFormat的用法及各符號的意義

    聊聊DecimalFormat的用法及各符號的意義

    這篇文章主要介紹了DecimalFormat的用法及各符號的意義,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-10-10
  • java如何獲取map中value的最大值

    java如何獲取map中value的最大值

    這篇文章主要介紹了java如何獲取map中value的最大值問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • spring 整合 mybatis 中數(shù)據(jù)源的幾種配置方式(總結篇)

    spring 整合 mybatis 中數(shù)據(jù)源的幾種配置方式(總結篇)

    因為spring 整合mybatis的過程中, 有好幾種整合方式,尤其是數(shù)據(jù)源那塊,經(jīng)??吹讲灰粯拥呐渲梅绞剑偢杏X有點亂,所以今天有空總結下,感興趣的朋友跟隨腳本之家小編一起學習吧
    2018-05-05
  • Java中?springcloud.openfeign應用案例解析

    Java中?springcloud.openfeign應用案例解析

    使用OpenFeign能讓編寫Web?Service客戶端更加簡單,使用時只需定義服務接口,然后在上面添加注解,OpenFeign也支持可拔插式的編碼和解碼器,這篇文章主要介紹了Java中?springcloud.openfeign應用案例解析,需要的朋友可以參考下
    2024-06-06

最新評論

金溪县| 涡阳县| 阿合奇县| 宜川县| 白银市| 柘荣县| 丹阳市| 广元市| 永吉县| 泰来县| 永春县| 日喀则市| 余干县| 平顶山市| 雷州市| 新民市| 东乡族自治县| 常山县| 巴林左旗| 阆中市| 青阳县| 灵山县| 天峨县| 三江| 南宁市| 屏山县| 偃师市| 苍山县| 长治市| 潍坊市| 荥阳市| 彝良县| 黄浦区| 广西| 怀仁县| 淮北市| 英山县| 云浮市| 海门市| 京山县| 武威市|