Linux服務器后台運行jar包


上代碼

將運行日志輸入到 logs.txt (jar包所在的目錄)

nohup java -jar xxx.jar >logs.txt &

分解介紹

  1. 首先最基本的運行jar包命令是:
java -jar xxx.jar

這個命令會鎖定命令窗口,只能看到當前運行的輸出信息。而無法發送其他指令。

這種方式當ssh窗口關閉時,程序中止運行,或者是運行時沒法切出去執行其他任務

  1. 讓jar包后台運行

用"&"符號結尾表示,讓程序在后台運行。
這樣的話,命令窗口就不會被鎖定,而可以發送其他指令,但是當窗口關閉時,后台運行的程序依然會被停止。

nohup命令:nohup 命令運行由 Command參數和任何相關的 Arg參數指定的命令,忽略所有掛斷信號。要運行后台中的 nohup 命令,添加 & ( 表示“and”的符號)到命令的尾部。

簡單地說就是,nohup命令可以阻止窗口關閉是的掛斷信號,使程序繼續運行。這樣,命令就修改為了

nohup java -jar xxx.jar &
  1. 設置輸出文件

在這個命令下已經可以實現需要的功能了。最后的 >logs.txt 表示輸出文件。可以隨意寫隨意指定路徑。如果不寫情況下(缺省),就回默認在jar包所在目錄,創建nohup.out文件。

如果項目中已經指定了日志輸出,就會重復輸出,生成兩個文件,把 >logs.txt 刪了的話,當前的運行程序不會再生成新的文件。

nohup java -jar xxx.jar >logs.txt &

命令運行成功后,會返回一個進程號,可以通過 kill -9 命令殺死這個進程來直接關閉。

如果忘了進程號,可以通過

ps -ef|grep xxx.jar

來查看當前運行的jar包程序進程號

查詢當前活動的進程

ps -aux|grep java

查看linux系統內存大小的詳細信息,可以查看總內存,剩余內存、可使用內存等信息

cat /proc/meminfo


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM