linux重啟java服務(wù)的腳本
最近在一個(gè)學(xué)習(xí)群里面一位老哥問(wèn)了一個(gè)問(wèn)題,他需要重啟一個(gè)微服務(wù)但是之前沒(méi)接觸過(guò)linux,只做過(guò)開(kāi)發(fā)。我就在想有多少培訓(xùn)出來(lái)工作一兩年都沒(méi)有接觸過(guò)公司的服務(wù)器,連公司服務(wù)器在哪都不知道,只知道自己寫(xiě)完的代碼提交上去,然后測(cè)試沒(méi)問(wèn)題就不知道項(xiàng)目后續(xù)的事情了,所以就想著寫(xiě)一篇超簡(jiǎn)單重啟java程序的帖子大家一起進(jìn)步。
環(huán)境
系統(tǒng):阿里云center OS 8
java環(huán)境:jdk1.8
java程序:hg-learn.jar\
第一步
查看當(dāng)前java程序是否在運(yùn)行
ps -ef|grep hg-learn.jar
第二步
通過(guò)上面命令可以看到現(xiàn)在 hg-learn.jar jar包的運(yùn)行情況,這里運(yùn)行的進(jìn)程號(hào)是 78572 ,殺掉這個(gè)進(jìn)程,也可以用 kill +對(duì)應(yīng)的進(jìn)程號(hào)
kill -9 78572
kill -9 對(duì)應(yīng)的進(jìn)程號(hào)
第三步
重新啟動(dòng)應(yīng)用程序: java -jar hg-learn.jar
后臺(tái)啟動(dòng): nohup java -jar hg-learn.jar &
后臺(tái)啟動(dòng)并設(shè)置內(nèi)存大小: nohup java -Xmx512m -jar hg-learn.jar &
如果沒(méi)有指定日志輸出那么就在當(dāng)前的文件夾生成一個(gè) nohup.out 文件夾。
通過(guò) tail -f nohup.out 查看項(xiàng)目啟動(dòng)信息。
shell腳本
生成 .sh 文件然后給定權(quán)限,把下面這段代碼放進(jìn)入每次啟動(dòng)就只需要通過(guò) sh start.sh 命令啟動(dòng)或重啟項(xiàng)目了。
注意: 修改對(duì)應(yīng)的項(xiàng)目名稱,之后需要重啟java服務(wù)只需要 sh 下面這個(gè)腳本文件名.sh 即可
#!/bin/sh echo " =====關(guān)閉Java應(yīng)用======" PROCESS=`ps -ef |grep java |grep -v grep|grep hg-learn.jar|awk '{print $2}'` for i in $PROCESS do echo "Kill the $1 process [ $i ]" kill -9 $i done echo " =====啟動(dòng)Java應(yīng)用======" nohup java -Xmx512m -jar hg-learn.jar & echo $! > savePid.txt cat savePid.txt rm savePid.txt tail -f nohup.out
到此這篇關(guān)于linux重啟java服務(wù)簡(jiǎn)單的文章就介紹到這了,更多相關(guān)linux重啟java內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java非阻塞I/O模型之NIO相關(guān)知識(shí)總結(jié)
在了解NIO (Non-Block I/O) 非阻塞I/O模型之前,我們可以先了解一下原始的BIO(Block I/O) 阻塞I/O模型,NIO模型能夠以非阻塞的方式更好的利用服務(wù)器資源,需要的朋友可以參考下2021-05-05基于Spring Boot應(yīng)用ApplicationEvent案例場(chǎng)景
這篇文章主要介紹了基于Spring Boot應(yīng)用ApplicationEvent,利用Spring的機(jī)制發(fā)布ApplicationEvent和監(jiān)聽(tīng)ApplicationEvent,需要的朋友可以參考下2023-03-03springboot中@Value的工作原理說(shuō)明
這篇文章主要介紹了springboot中@Value的工作原理,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-07-07【MyBatis源碼全面解析】MyBatis一二級(jí)緩存介紹
下面小編就為大家?guī)?lái)一篇【MyBatis源碼全面解析】MyBatis一二級(jí)緩存介紹。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-06-06java實(shí)現(xiàn)大文件導(dǎo)出的實(shí)現(xiàn)與優(yōu)化
這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)大文件導(dǎo)出的實(shí)現(xiàn)與優(yōu)化的相關(guān)資料,文中的示例代碼講解詳細(xì),對(duì)我們深入了解java有一定的幫助,感興趣的小伙伴可以了解下2023-11-11Redis實(shí)現(xiàn)延遲隊(duì)列的全流程詳解
Redisson是Redis服務(wù)器上的分布式可伸縮Java數(shù)據(jù)結(jié)構(gòu),這篇文中主要為大家介紹了Redisson實(shí)現(xiàn)的優(yōu)雅的延遲隊(duì)列的方法,需要的可以參考一下2023-03-03Spring的異常處理@ExceptionHandler注解解析
這篇文章主要介紹了Spring的異常處理@ExceptionHandler注解解析,當(dāng)一個(gè)Controller中有方法加了@ExceptionHandler之后,這個(gè)Controller其他方法中沒(méi)有捕獲的異常就會(huì)以參數(shù)的形式傳入加了@ExceptionHandler注解的那個(gè)方法中,需要的朋友可以參考下2023-12-12SpringBoot使用PageHelper分頁(yè)詳解
這篇文章主要介紹了SpringBoot使用PageHelper分頁(yè)詳解,我們?cè)谌魏蔚南到y(tǒng)中,分頁(yè)功能是必不可少的,然而,對(duì)于這個(gè)功能如果有一種快速開(kāi)發(fā)的實(shí)現(xiàn)方式,當(dāng)然可以節(jié)省我們很多的時(shí)間了,接下來(lái),我就給大家基于不同的環(huán)境來(lái)說(shuō)說(shuō)如何使用一個(gè)分頁(yè)插件,需要的朋友可以參考下2023-10-10