欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java 一鍵部署 jar 包和 war 包

 更新時(shí)間:2021年09月01日 17:14:25   作者:吉他手_c156  
這篇文章主要介紹了Java創(chuàng)建打包命令、創(chuàng)建啟動(dòng)文件等功能實(shí)現(xiàn)Java一鍵部署 jar 包和 war 包,感興趣的下伙伴可以參考下文

java 一鍵部署 jar 包和 war 包

一、創(chuàng)建打包命令 gateway-package.bat

@echo off
cd /d "F:\uincall-cloud-service\uin-api-alibaba\gateway\"
gradle build bootJar
  • @echo off 關(guān)閉命令回顯,當(dāng)不需要 dos 命令一行一行在命令窗口中顯示的時(shí)候使用,@echo on 顯示命令回顯

例如:

當(dāng)為 @echo on 會(huì)顯示執(zhí)行的命令

@echo on
title  A
color 01
echo %date%
pause


當(dāng)為 @echo off 并不會(huì)執(zhí)行 title A 和 color 01 命令

echo 是輸入提示信息
pause 是暫停執(zhí)行執(zhí)行命令,按下任意鍵后會(huì)繼續(xù)執(zhí)行,pause 會(huì)提示“請(qǐng)按任意鍵繼續(xù)...”

  • 當(dāng)執(zhí)行的 bat 不在項(xiàng)目目錄時(shí),需要進(jìn)入到項(xiàng)目目錄執(zhí)行打包命令,需要使用 /d 命令,后面是進(jìn)入的目錄
  • gradle build bootJar 是執(zhí)行 gradle 打包命令,如果是 maven 工程則使用 maven 打包命令,例如:mvn clean package -Dmaven.test.skip=true

創(chuàng)建項(xiàng)目打包并執(zhí)行到上傳到服務(wù)器,并且結(jié)束之前項(xiàng)目部署的進(jìn)程,并啟動(dòng)新的部署命令

二、創(chuàng)建啟動(dòng)文件 gateway.xml

<?xml version="1.0" encoding="utf-8" ?>
<config>
    <threadPoolSize default="5">3</threadPoolSize><!--線程池大小,如果上傳服務(wù)器多的話可以調(diào)大,默認(rèn)5個(gè)線程-->
    <servers>
        <server>
            <!--  服務(wù)器 ip -->
            <host>1.0.0.0</host>
            <!--  服務(wù)器用戶名  -->
            <userName>root</userName>
            <!--  服務(wù)器密碼  -->
            <password>password</password>
            <!--  上傳的文件,可以有多個(gè)  -->
            <uploads>
                <upload>
                    <!--  上傳的包路徑  -->
                    <local>F:\uincall-cloud-service\uin-api-alibaba\gateway\build\libs\gateway-1.0.0.jar</local>
                    <!--  上傳到服務(wù)器的路徑  -->
                    <remote>/root/data/callcenter</remote>
                </upload>
            </uploads>
            <!--  需要執(zhí)行的命令,可以有多個(gè) -->
            <commands>
                <!--  結(jié)束之前部署的進(jìn)程  -->
                <command><![CDATA[source /etc/profile; ps -ef | grep gateway-1.0.0.jar | grep -v grep | awk '{print $2}' | xargs kill -9]]></command>
                <!--  重新部署新上傳的包  -->
                <command><![CDATA[source /etc/profile; nohup java -jar /root/data/callcenter/gateway-1.0.0.jar >> /root/data/callcenter/gateway.log 2>&1 &]]></command>
            </commands>
        </server>
    </servers>
</config>


  • ps -ef | grep gateway-1.0.0.jar | grep -v grep | awk '{print $2}' | xargs kill -9 查詢正在部署的項(xiàng)目進(jìn)行并且殺死
  • ps -ef | grep gateway-1.0.0.jar 是查詢進(jìn)程
  • grep -v grep 過濾包含 grep 的進(jìn)程行,然后再殺掉剩下的進(jìn)程
  • awk '{print $2}' 提取找到的進(jìn)程行記錄中第二列的參數(shù),也就是正在執(zhí)行項(xiàng)目的進(jìn)程號(hào)

  • xargs kill -9 把前面的參數(shù)都傳遞給后面的命令 kill -9

三、一鍵打包并部署腳本 gateway-deploy.bat 文件內(nèi)容

call gateway-package.bat
java -jar F:\uincall-cloud-service\test-deploy\javaauto.jar F:\uincall-cloud-service\test-deploy\gateway.xml
pause


  • call gateway-package.bat 是執(zhí)行上面的項(xiàng)目打包的 gateway-package.bat 文件,call 作用是可以在當(dāng)前批處理執(zhí)行前調(diào)用另一個(gè)批處理文件,這里的意思就是先打包在上傳至服務(wù)器并且部署
  • java -jar F:\uincall-cloud-service\test-deploy\javaauto.jar 可執(zhí)行文件 jar 包,負(fù)責(zé)執(zhí)行上傳部署指令
  • F:\uincall-cloud-service\test-deploy\gateway.xml ,上傳部署的命令都寫在 gateway.xml 中

注意:這里要執(zhí)行的文件都需使用絕對(duì)路徑,哪怕在一個(gè)文件加里!??!

四、雙擊打包部署 bat 文件 gateway-deploy.bat

成功上傳并且部署成功!!

五、執(zhí)行 vue 打包并且上傳部署

創(chuàng)建 vue 打包 bat 文件 vue-package.bat

@echo off
echo 開始打包......
cd /d "F:\uincall-cloud-service\cc.uincall.com\"
npm run build
echo 打包完畢  success

F:\uincall-cloud-service\cc.uincall.com" 是工程根目錄

六、安裝 7z 壓縮工具并配置系統(tǒng)環(huán)境變量

創(chuàng)建 7z 壓縮 vue 打包后的 bat 文件 zip.bat

@echo off
set CALLCENTER_PATH=F:\uincall-cloud-service\cc.uincall.com\dist\*
set ZIP_PATH=F:\uincall-cloud-service\deploy\callcenter.tar

echo 開始?jí)嚎s  callcenter vue
7z a -r %ZIP_PATH% %CALLCENTER_PATH%

  • set CALLCENTER_PATH=F:\uincall-cloud-service\cc.uincall.com\dist* vue 打包后的文件夾目錄,打包后的文件都在此目錄下
  • set ZIP_PATH=F:\uincall-cloud-service\deploy\callcenter.tar 設(shè)置打包后的文件名和格式
  • 7z a -r %ZIP_PATH% %CALLCENTER_PATH%,7z:使用 7z 壓縮,a:是添加文件到壓縮文件中,-r: 包括子目錄,其他是引用上面定義的變量,也就是打包后的格式和需要打包的文件所在目錄

七、創(chuàng)建上傳部署文件 webConfig.xml

<config>
    <threadPoolSize default="5">3</threadPoolSize><!--線程池大小,如果上傳服務(wù)器多的話可以調(diào)大,默認(rèn)5個(gè)線程-->
    <servers>
        <server>
            <!--  服務(wù)器 ip -->
            <host>1.0.0.0</host>
            <!--  服務(wù)器用戶名 -->
            <userName>root</userName>
            <!-- 服務(wù)器密碼  -->
            <password>password</password>
            <!--  上傳的文件,可以有多個(gè) -->
            <uploads>
                <upload>
                    <!--  上傳的文件 -->
                    <local>F:\uincall-cloud-service\deploy\callcenter.tar</local>
                    <!--  上傳到服務(wù)器的目錄 -->
                    <remote>/root/data/callcenter/web</remote>
                </upload>
            </uploads>
            <!-- 上傳成功后執(zhí)行的命令  -->
            <commands>
                <!--  添加 777 權(quán)限 -->
                <command><![CDATA[source /etc/profile; chmod 777 /root/data/callcenter/web/callcenter.tar]]></command>
                <!--  解壓 -C 表示創(chuàng)建新的檔案文件,會(huì)解壓到新的目錄,默認(rèn)解壓到根目錄 / -->              
                <command><![CDATA[source /etc/profile; tar -xvf /root/data/callcenter/web/callcenter.tar -C /root/data/callcenter/web]]></command>
                <!-- 解壓完刪除壓縮文件 -->
                <command><![CDATA[source /etc/profile; rm -rf /root/data/callcenter/web/callcenter.tar]]></command>
                <!--  刷新 nginx -->
                <command><![CDATA[source /etc/profile; nginx -s reload]]></command>
            </commands>
        </server>
    </servers>
</config>

創(chuàng)建 vue 打包部署 bat 文件 vue-deploy.bat,分別執(zhí)行上面創(chuàng)建打包 vue-package.bat 壓縮 zip.bat 上傳部署命令 webConfig.cml

call F:\uincall-cloud-service\test-deploy\vue-package.bat
call F:\uincall-cloud-service\test-deploy\zip.bat
java -jar F:\uincall-cloud-service\test-deploy\javaauto.jar F:\uincall-cloud-service\test-deploy\webConfig.xml
echo 上傳并解壓完畢
pause

九、雙擊執(zhí)行部署 vue-deploy.bat

成功上傳并解壓

以上就是java 一鍵部署 jar 包和 war 包的詳細(xì)內(nèi)容,更多關(guān)于java 部署 jar 包 war 包的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!,希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解Mybatis核心類SqlSessionFactory的構(gòu)建

    詳解Mybatis核心類SqlSessionFactory的構(gòu)建

    這篇文章主要為大家詳細(xì)介紹了Mybatis核心類SqlSessionFactory的構(gòu)建過程,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2022-12-12
  • Java中JDK動(dòng)態(tài)代理的超詳細(xì)講解

    Java中JDK動(dòng)態(tài)代理的超詳細(xì)講解

    JDK 的動(dòng)態(tài)代理是基于攔截器和反射來實(shí)現(xiàn)的,JDK代理是不需要第三方庫支持的,只需要JDK環(huán)境就可以進(jìn)行代理,下面這篇文章主要給大家介紹了關(guān)于Java中JDK動(dòng)態(tài)代理的超詳細(xì)講解,需要的朋友可以參考下
    2022-10-10
  • 怎么在AVD上安裝apk軟件

    怎么在AVD上安裝apk軟件

    執(zhí)行 Windows 開始菜單 => 所有程序 => 附件 => 命令提示符 或通過 Win+R 組合鍵調(diào)出 運(yùn)行 對(duì)話框輸入cmd 單擊確定即可
    2013-09-09
  • Spring框架基于注解的AOP之各種通知的使用與環(huán)繞通知實(shí)現(xiàn)詳解

    Spring框架基于注解的AOP之各種通知的使用與環(huán)繞通知實(shí)現(xiàn)詳解

    這篇文章主要介紹了Spring框架基于注解的AOP之各種通知的使用及其環(huán)繞通知,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2022-11-11
  • java面試JDK8?new?ReentrantLock()加鎖流程解析

    java面試JDK8?new?ReentrantLock()加鎖流程解析

    這篇文章主要為大家介紹了java面試JDK8?new?ReentrantLock()加鎖流程解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-07-07
  • JavaSE的邏輯控制你了解嗎

    JavaSE的邏輯控制你了解嗎

    這篇文章主要為大家詳細(xì)介紹了JavaSE的邏輯控制,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • Java獲取項(xiàng)目路徑的多種方式

    Java獲取項(xiàng)目路徑的多種方式

    這篇文章主要介紹了Java獲取項(xiàng)目路徑的多種方式,這時(shí)候就需要用java給我們提供的一些獲取相對(duì)路徑方法了,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2022-01-01
  • Java實(shí)戰(zhàn)項(xiàng)目 圖書管理系統(tǒng)

    Java實(shí)戰(zhàn)項(xiàng)目 圖書管理系統(tǒng)

    這篇文章主要介紹了使用java SSM jsp mysql maven設(shè)計(jì)實(shí)現(xiàn)的精品圖書管理系統(tǒng),是一個(gè)很好的實(shí)例,對(duì)大家的學(xué)習(xí)和工作具有借鑒意義,建議收藏一下
    2021-09-09
  • HashMap底層數(shù)據(jù)結(jié)構(gòu)詳細(xì)解析

    HashMap底層數(shù)據(jù)結(jié)構(gòu)詳細(xì)解析

    這篇文章主要介紹了HashMap底層數(shù)據(jù)結(jié)構(gòu)詳細(xì)解析,HashMap作為開發(fā)中常用的數(shù)據(jù)結(jié)構(gòu),也是面試中經(jīng)常被問的知識(shí)點(diǎn),因此作為開發(fā)者應(yīng)該盡可能多的理解其底層的數(shù)據(jù)結(jié)構(gòu),需要的朋友可以參考下
    2023-11-11
  • 一篇文章帶你詳解Spring的AOP

    一篇文章帶你詳解Spring的AOP

    這篇文章主要為大家介紹了Spring的AOP,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01

最新評(píng)論