Spring Boot項目中jar包在服務(wù)器上啟動的正確姿勢
關(guān)于
一般上來說,我們在服務(wù)器上啟動一個jar,最簡單的方式就是java -jar xx.jar,雖然這種方式簡單但有時候我們的場景需要更多,例如常駐后臺運行,在命令行窗口關(guān)閉的時候不中斷項目,指定端口,并且輸出日志到文件中等。所以這個時候我們通常會采用腳本啟動和關(guān)閉項目,方便項目的統(tǒng)一管理。
腳本啟動和關(guān)閉的案例
1.啟動腳本
nohup java -jar ../webapp/xxx.jar --server.port=9002 >> ../logs/xxx.log & tail -f ../logs/xxx.log
2.關(guān)閉腳本
pid=`ps -ef|grep java|grep xxx.jar |awk '{print $2}'` if [ -z $pid ]; then echo 'app not runing' else echo 'kill pid ' $pid kill $pid sleep 5 ps -ef|grep java fi
3.最后一步,執(zhí)行腳本。(cd到腳本目錄并執(zhí)行)
sh xxx.sh
補充
1.命令后加&符號,可以使命令在后臺執(zhí)行。
2.tail -f 實時查看日志文件。
3.如果要先關(guān)閉項目再啟動,盡量不要使用Ctrl+z退出命令行窗口的當前狀態(tài),最好新開一個命令行窗口,然后執(zhí)行關(guān)閉腳本,再執(zhí)行啟動腳本。這樣操作,可以避免應(yīng)用莫名其妙沒有關(guān)閉到的情況,反復(fù)執(zhí)行關(guān)閉腳本卻沒有殺死應(yīng)用進程的奇怪問題,需要殺多次。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關(guān)文章
MyBatis的SQL執(zhí)行結(jié)果和客戶端執(zhí)行結(jié)果不一致問題排查
本文主要介紹了MyBatis的SQL執(zhí)行結(jié)果和客戶端執(zhí)行結(jié)果不一致問題排查,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-04-04Eclipse 開發(fā)java 出現(xiàn)Failed to create the Java Virtual Machine錯誤
這篇文章主要介紹了Eclipse 開發(fā)java 出現(xiàn)Failed to create the Java Virtual Machine錯誤解決辦法的相關(guān)資料,需要的朋友可以參考下2017-04-04基于SpringBoot核心原理(自動配置、事件驅(qū)動、Condition)
這篇文章主要介紹了基于SpringBoot核心原理(自動配置、事件驅(qū)動、Condition),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-08-08SpringBoot項目中通過@Value給參數(shù)賦值失敗的解決方案
springboot項目中通過@Value給屬性附值失敗,給參數(shù)賦值失敗,打印為空值,文中通過代碼示例給大家介紹的非常詳細,對大家解決問題有一定的幫助,需要的朋友可以參考下2024-04-04詳解JAVA中ListIterator和Iterator的辨析
這篇文章主要為大家詳細介紹了JAVAListIterator和Iterator的辨析,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-02-02