關于
一般上來說,我們在服務器上啟動一個jar,最簡單的方式就是java -jar xx.jar,雖然這種方式簡單但有時候我們的場景需要更多,例如常駐后臺運行,在命令行窗口關閉的時候不中斷項目,指定端口,并且輸出日志到文件中等。所以這個時候我們通常會采用腳本啟動和關閉項目,方便項目的統一管理。
腳本啟動和關閉的案例
1.啟動腳本
1
2
3
|
nohup java -jar ../webapp/xxx.jar --server.port= 9002 >> ../logs/xxx.log & tail -f ../logs/xxx.log |
2.關閉腳本
1
2
3
4
5
6
7
8
9
10
|
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.最后一步,執行腳本。(cd到腳本目錄并執行)
1
|
sh xxx.sh |
補充
1.命令后加&符號,可以使命令在后臺執行。
2.tail -f 實時查看日志文件。
3.如果要先關閉項目再啟動,盡量不要使用ctrl+z退出命令行窗口的當前狀態,最好新開一個命令行窗口,然后執行關閉腳本,再執行啟動腳本。這樣操作,可以避免應用莫名其妙沒有關閉到的情況,反復執行關閉腳本卻沒有殺死應用進程的奇怪問題,需要殺多次。
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對服務器之家的支持。
原文鏈接:https://huangweicai.github.io/2019/01/06/SpringBoot項目的jar包在服務器上啟動的正確姿勢/