天天看點

讓jar程式在linux上一直執行

當我們把java程式打成jar包後,放到linux上通過putty或其它終端執行的時候,如果按照:java -jar xxxx.jar執行,當我們退出putty或終端的時候,xxxx.jar這個程式也會停止。為了保證程式能夠一直運作,應該改為這樣運作:nohup java -jar xxx.jar&指令,則程式會在背景一直運作,值得注意的是,此時程式控制台輸出會被轉移到nohup.out檔案中,這個nohup.out檔案的位置就在jar包的目前檔案夾内。

但是有時候在這一步會有問題,當把終端關閉後,程序會自動被關閉,察看nohup.out可以看到在關閉終端瞬間服務自動關閉。

有個操作終端時的細節:當shell中提示了nohup成功後還需要按終端上鍵盤任意鍵退回到shell輸入指令視窗,然後通過在shell中輸入exit來退出終端;而我是每次在nohup執行成功後直接點關閉程式按鈕關閉終端。是以這時候會斷掉該指令所對應的session,導緻nohup對應的程序被通知需要一起shutdown。

這個細節有人和我一樣沒注意到,是以在這兒記錄一下了。若轉載請注明出處!若有疑問,請回複交流!