成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

spring boot 應(yīng)用程序在 linux 下的 部署及運(yùn)行

wudengzan / 3171人閱讀

摘要:直接啟動目標(biāo)什么意思呢就是將自帶的啟動內(nèi)容標(biāo)準(zhǔn)錯誤流重定向到標(biāo)準(zhǔn)輸出流,并且以在后臺運(yùn)行的形式去運(yùn)行。之后你只需要運(yùn)行這個腳本即可啟動應(yīng)用程序啦,如果你想查看一下日志內(nèi)容,你可以輸入,或者你只想查看最后幾行內(nèi)容即可。

SpringBoot 應(yīng)用程序在 linux 下的部署及運(yùn)行 將 spring boot 應(yīng)用程序打包成 jar 包
我們使用 spring boot 的 maven 插件來構(gòu)建管理整個應(yīng)用程序,使用 mvn package 將應(yīng)用程序打包成一個 jar 包
將 該 jar 包上傳到 服務(wù)器
上傳到服務(wù)器大致有兩種方式(常見的):1)通過 xftp 這種方式;2)本文將要介紹的這種,我不太建議使用 xftp,因?yàn)樗R娏?,不新奇?br>說說第二種方式吧:首先我們在 linux 服務(wù)器上,下載 lrzsz 插件,命令為:yum -y install lrzsz,然后上傳文件就輸入命令:rz -y -y 表示強(qiáng)制覆蓋原有文件(建議使用),rz 表示上傳,當(dāng)然了,sz 就表示下載嘍。之后就會打開一個 windows 的文件資源管理器窗口,你選擇目標(biāo) jar 包即可實(shí)現(xiàn)上傳(前提,選擇好你的上傳目錄)
運(yùn)行

上傳到服務(wù)器的指定位置了,接下來就是如何運(yùn)行了!
我們都知道,java 程序在你本地運(yùn)行時就是選擇好入口 main,然后運(yùn)行即可。但是在 linux 上就不是那么簡單了。
大致呢有兩種:一種是直接手動啟動;一種是通過寫一個腳本文件來啟動。
直接啟動:

java -jar 目標(biāo).jar >> catalina.out 2>&1 &,什么意思呢?就是將 tomcat(spring-boot-starter-web 自帶 tomcat) 的啟動內(nèi)容 標(biāo)準(zhǔn)錯誤流重定向到標(biāo)準(zhǔn)輸出流(2 >&1),并且以在后臺運(yùn)行的形式去運(yùn)行(&)。
腳本啟動

編寫啟動腳本

#!/bin/bash
PROJECTNAME=目標(biāo)jar名稱(不需要帶.jar)
pid=`ps -ef |grep $PROJECTNAME |grep -v "grep" |awk "{print $2}"`
if [ $pid ]; then
?    echo "$PROJECTNAME  is  running  and pid=$pid"
else
   echo "Start success to start $PROJECTNAME ...."
   nohup java -jar 目標(biāo).jar  >> catalina.out  2>&1 &
fi

在該 .sh(腳本文件)中,使用到了命令 nohup java -jar ... nohup 就是 no hangup(不掛起),即 即使用戶登出,
關(guān)閉終端后,該進(jìn)程還會繼續(xù)運(yùn)行;采用 nohup 命令后,那么就會在當(dāng)前腳本所在的同級目錄下生成一個 nohup.out 的文件,
該文件就記錄了整個應(yīng)用啟動過程以及之后運(yùn)行中的所有日志內(nèi)容(因?yàn)槲覀兪菍?2 標(biāo)準(zhǔn)錯誤 作為輸出內(nèi)容的,
而標(biāo)準(zhǔn)錯誤默認(rèn)是包括所有的輸出內(nèi)容+錯誤內(nèi)容)。之后你只需要運(yùn)行這個腳本即可啟動應(yīng)用程序啦:./start.sh
如果你想查看一下日志內(nèi)容,你可以輸入:vi nohup.out,或者你只想查看最后幾行內(nèi)容:tail -f nohup.out即可。

腳本關(guān)閉

編寫關(guān)閉腳本:
其實(shí)我們一般是不需要關(guān)閉腳本的,因?yàn)槲覀兺ǔJ沁@樣操作的:進(jìn)入到該應(yīng)用程序所在的目錄:
ps aux | grep javaps -ef | grep java 二者并沒有什么太大的區(qū)別,看你喜歡用哪個命令了,
然后找到該應(yīng)用程序的 pid, 然后 kill -g 該pid 就殺死這個進(jìn)程了。但是其實(shí)這樣很麻煩,
你習(xí)慣了還好,一般我還是建議你使用 關(guān)閉腳本的

#!/bin/bash
PROJECTNAME=目標(biāo)

pid=`ps -ef |grep $PROJECTNAME |grep -v "grep" |awk "{print $2}" `

if [ $pid ]; then

?    echo "$PROJECTNAME is  running  and pid=$pid"

?    kill -9 $pid

?    if [[ $? -eq 0 ]];then

?       echo "sucess to stop $PROJECTNAME "

?    else

?       echo "fail to stop $PROJECTNAME "

?     fi

fi

一般目錄結(jié)構(gòu)就是如下圖所示:

我實(shí)際中用的這個啟動腳本內(nèi)容如下:

ps:至于有人說的可能需要在 pom.xml 中指定 入口類,我持保留意見

        
                                    - 2019-05-31 17:46
                                    
聲明
原創(chuàng)手敲不易,轉(zhuǎn)載請注明出處,謝謝。我是拉丁小毛,歡迎大家關(guān)注我哦,一起交流,共同進(jìn)步。有問題可以郵我哦([email protected])

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/74717.html

相關(guān)文章

  • Docker 部署 SpringBoot 項目整合 Redis 鏡像做訪問計數(shù)Demo

    摘要:一個使用容器的應(yīng)用,通常由多個容器組成。使用,不再需要使用腳本來啟動容器。 Docker 部署SpringBoot項目整合 Redis 鏡像做訪問計數(shù)Demo 最終效果如下 showImg(https://segmentfault.com/img/remote/1460000012799923?w=841&h=433); 大概就幾個步驟 1.安裝 Docker CE 2.運(yùn)行 Red...

    isLishude 評論0 收藏0
  • Java學(xué)習(xí)路線總結(jié),搬磚工逆襲Java架構(gòu)師(全網(wǎng)最強(qiáng))

    摘要:哪吒社區(qū)技能樹打卡打卡貼函數(shù)式接口簡介領(lǐng)域優(yōu)質(zhì)創(chuàng)作者哪吒公眾號作者架構(gòu)師奮斗者掃描主頁左側(cè)二維碼,加入群聊,一起學(xué)習(xí)一起進(jìn)步歡迎點(diǎn)贊收藏留言前情提要無意間聽到領(lǐng)導(dǎo)們的談話,現(xiàn)在公司的現(xiàn)狀是碼農(nóng)太多,但能獨(dú)立帶隊的人太少,簡而言之,不缺干 ? 哪吒社區(qū)Java技能樹打卡?【打卡貼 day2...

    Scorpion 評論0 收藏0
  • 吐血整理 20 道 Spring Boot 面試題,我經(jīng)常拿來面試別人!

    摘要:你如何理解中的可以理解為啟動器,它包含了一系列可以集成到應(yīng)用里面的依賴包,你可以一站式集成及其他技術(shù),而不需要到處找示例代碼和依賴包。如你想使用訪問數(shù)據(jù)庫,只要加入啟動器依賴就能使用了。 面試了一些人,簡歷上都說自己熟悉 Spring Boot, 或者說正在學(xué)習(xí) Spring Boot,一問他們時,都只停留在簡單的使用階段,很多東西都不清楚,也讓我對面試者大失所望。 下面,我給大家總結(jié)...

    haoguo 評論0 收藏0
  • Maven詳細(xì)教程

    摘要:清理上一次執(zhí)行創(chuàng)建的文件處理資源文件編譯代碼執(zhí)行單元測試文件創(chuàng)建拷貝到本地的倉庫下面發(fā)布生成文檔將工程所有文檔生成網(wǎng)站,生成的網(wǎng)站界面默認(rèn)和的項目站點(diǎn)類似,但是其文檔用格式寫的,目前不支持,需要用其他插件配合才能支持。 前言 本文可以幫助你加深對Maven的整體認(rèn)識,不是一篇基礎(chǔ)文章。如果你現(xiàn)在還沒有用 Maven 跑過 HelloWorld,那么本文可能不適合你。 一、Maven簡介...

    Keagan 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<