導航:首頁 > 編程語言 > linuxjavajar後台運行

linuxjavajar後台運行

發布時間:2025-02-08 16:58:55

1. Jar包部署在linux後台永久運行

在Linux後台永久運行Jar包的部署方法主要有兩種:

方法一使用nohup命令,語法為nohup java -jar xxx.jar &。此命令在後台運行指定的Java程序,不會因為關閉當前控制台或退出賬戶而停止運行。默認情況下,nohup命令會將程序的輸出結果轉移到nohub.out文件中,該文件位於程序執行的目錄下。你可以自定義輸出文件名稱,例如nohup java -jar xxx.jar >out.file 2>&1 &。此命令將程序的輸出和錯誤信息重定向到out.file文件,同時在後台執行程序。

方法二在執行命令時添加&,例如java -jar xxx.jar >out.log &。這樣可以在後台運行程序,並可選擇性地將控制台輸出轉移到文件out.log中。重要的是在退出shell會話時,正確使用exit命令,避免直接關閉終端窗口。直接關閉窗口會導致程序所在session被中斷,從而導致後台進程結束運行。正確退出可以保持程序的持續運行。

2. Linux下運行jar包的幾種方式

1 阻塞式方式

java -jar xxx.jar

特點: 當前終端的會話窗口被阻塞, 可按CTRL + C中斷程序的運行, 或者直接關閉會話窗口 —— 此時jar程序將終止.

2 後台運行方式

# 通過"&"符號實現後台運行:

java -jar xxx.jar &

特點: 當前終端的會話窗口不會被阻塞, 但是如果關閉當前窗口, 程序將終止運行.

3 後台持續運行方式

# 通過"nohup"命令實現後台運行:

nohup java -jar xxx.jar &

nohup命令是不掛斷運行命令的意思.

特點: 當用戶退出或終端關閉時, 程序的運行不受影響.

說明: 用nohup命令運行任務時, 默認情況下這個任務的所有輸出都將被重定向到nohup.out文件中, 除非另外指定輸出文件. 指定輸出文件方式為:

# 將輸出重定向到xxx.log文件中:

nohup java -jar xxx.jar > xxx.log &

> 符號是重定向符, 實現: 把它之前命令的所有輸出信息重定向到後面的文件中, 而不是顯示到屏幕上.

3. linux下jar包啟動命令,我用nohup java -jar + *.jar命令啟動,此時命令

nohup java -jar + *.jar &
這樣就可以再後台運行了。
liunx命令後+&為後台運行指令

4. Linux 中啟動jar包命令

在Linux環境中,啟動jar包時可能會遇到一些問題,尤其是在集成工具如Jenkins和GitLab CI中,如果直接使用`java -jar`命令啟動,可能會導致程序運行後阻塞進程,導致jenkins任務無法正常結束。為了解決這個問題,有幾種方式可以嘗試:

首先,如果你希望啟動jar包後不鎖定窗口,可以使用`&`符號將命令置於後台運行,這樣當前ssh窗口不會被鎖定,但窗口關閉時程序會中止。然而,如果你需要窗口關閉後程序仍保持運行,可以使用`nohup`命令,它能確保即使賬戶退出或終端關閉,程序也能繼續執行。nohup命令的一個特性是,默認情況下,所有輸出會被重定向到nohup.out文件中,除非另有指定。

另一種方法是使用輸出重定向`command >out.file`,這會將命令的輸出內容定向到out.file文件中,而非直接顯示在屏幕上。這樣可以查看日誌,同時保持命令在後台運行。

要查看所有後台運行的任務,你可以使用`jobs`命令,它會列出作業編號及其狀態,通過`fg + 編號`可以將作業調回前台控制。

總的來說,根據你的需求選擇合適的方法,如後台運行保持窗口可用、或使用nohup確保程序持續運行,通過輸出重定向管理日誌,以及監控後台任務,都能幫助你更好地管理和控制Linux中啟動的jar包。

5. 怎麼把java的.jar程序在linux上注冊成服務,設置開機自啟動

您好,具體可以依據您的系統版本來。
有的系統不支持systemd只能用init.d
首先寫啟動代碼
#!/bin/bash
java jar文件回1 & # 有多個程序答時注意加上&號
java jar文件2 &
保存到init-java文件里
如果您的系統支持init.d那麼可以放在/etc/init.d目錄下,注意可執行許可權0755或者0777。
不支持init.d可以使用systemd實現
將init-java移動到/usr/bin/
然後寫一個systemd服務
[Unit]
Description=Virtualbox Kernel Loader
[Service]
ExecStart=/usr/bin/init-java
[Install]
WantedBy=multi-user.target
保存到/etc/systemd/system/init-java.service
然後systemctl enable init-java即可。

閱讀全文

與linuxjavajar後台運行相關的資料

熱點內容
用什麼軟體打開sid文件 瀏覽:511
怎麼在網站中下視頻 瀏覽:485
文件夾套打 瀏覽:192
網路老菩薩什麼意思 瀏覽:845
蘋果復雜密碼字母怎麼輸入 瀏覽:532
iis7應用程序池回收設置 瀏覽:420
javadoc文件夾 瀏覽:876
大數據是哪個年代出現的 瀏覽:701
app版權信息格式 瀏覽:505
matlab程序運行截圖 瀏覽:771
ideajava轉maven 瀏覽:229
氣象博士app為什麼用不了了 瀏覽:742
天天p圖最初始特效版本 瀏覽:74
海康h264初始密碼 瀏覽:713
輪轂前後數據一樣有什麼影響 瀏覽:972
車床夾具自動松開怎麼編程 瀏覽:959
數據在哪個層以幀的形式 瀏覽:176
迷你編程第1關怎麼走路 瀏覽:733
網路適配層 瀏覽:511
安卓第三方輸入法隱私 瀏覽:265

友情鏈接