溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Java虛擬機(jī)進(jìn)程狀態(tài)管理工具 jps 失效該怎么辦

發(fā)布時(shí)間:2021-11-20 15:40:38 來源:億速云 閱讀:465 作者:柒染 欄目:云計(jì)算

這篇文章給大家介紹Java虛擬機(jī)進(jìn)程狀態(tài)管理工具 jps 失效該怎么辦,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

JPS 命令,小編給大家徹底的扯一扯這個(gè)命令的用法,和遇到的一些問題。

jps(Java Virtual Machine Process Status Tool)是 JDK 1.5 提供的一個(gè)顯示當(dāng)前所有 java 進(jìn)程 pid 的命令。很多人會(huì)用,但是很多人在使用過程中可能遇到了一些奇葩問題。

jps 命令存放在 JAVA_HOME/bin/ 目錄中,如果你的這個(gè)目錄沒有加入到 Path 中,使用這個(gè)命令時(shí),可能會(huì)提示命令不存在,無法識(shí)別的問題。

jps 命令格式為:

Java虛擬機(jī)進(jìn)程狀態(tài)管理工具 jps 失效該怎么辦

常用的 option 參數(shù)有 5 個(gè):

  • -q 只顯示 pid,不顯示 class 名稱,jar 文件名和傳遞給 main 方法的參數(shù)

  • -m 輸出傳遞給 main 方法的參數(shù),在嵌入式 jvm 上可能是 null

  • -l 輸出應(yīng)用程序 main class 的完整 package 名或者應(yīng)用程序的 jar 文件完整路徑名

  • -v 輸出傳遞給 JVM 的參數(shù)

  • -V 隱藏輸出傳遞給 JVM 的參數(shù)

我們常用的是直接輸入 jps,如果你忘記了怎么使用,可以使用 jps -help 命令查看幫助信息:

Java虛擬機(jī)進(jìn)程狀態(tài)管理工具 jps 失效該怎么辦

我們公司在節(jié)源后,資源共用,一些機(jī)器上部署了十幾個(gè)應(yīng)用。導(dǎo)致有的人程序訪問不了,這個(gè)很簡(jiǎn)單的問題,jps 看下應(yīng)用是否起來了。如果沒有應(yīng)用,看下日志,最終發(fā)現(xiàn)是端口被占用了。查看端口的命令,我們以后再說。

把 jps 命令給大家演示了之后,大家都會(huì)操作了。但是有些人發(fā)現(xiàn),一些機(jī)器上根本就用不了 jps 命令。究其原因,有以下幾種情況:

第一種情況就是,JAVA_HOME/bin/ 目錄沒加入 path 環(huán)境下。

第二種就是磁盤目錄讀寫權(quán)限問題。jps、jconsole、jvisualvm 等工具的數(shù)據(jù)來源就是這個(gè)文件(/tmp/hsperfdata_userName/pid),userName 是用戶名,所以當(dāng)該文件不存在或是無法讀取時(shí)就會(huì)出現(xiàn) jps 無法查看該進(jìn)程號(hào)。這種情況下,使用 ps -ef|grep java 命令能看到啟動(dòng)的 java 進(jìn)程。

第三種情況就是 /tmp 目錄被刪除或是定期清理,也或者是磁盤已滿等。

最后一種可能就是你的程序在啟動(dòng)時(shí)設(shè)置了 -Djava.io.tmpdir 參數(shù)。導(dǎo)致 java 進(jìn)程信息文件存儲(chǔ)地址被改變到其他位置了。

如果上面 4 情況你都沒問題,那就找找自己項(xiàng)目的原因。

關(guān)于Java虛擬機(jī)進(jìn)程狀態(tài)管理工具 jps 失效該怎么辦就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI