關(guān)于JDK環(huán)境變量,我推薦一下這個
前言
最近開發(fā)遇到java -jar xxx.jar 啟動的項目沒有辦法關(guān)閉的問題。
window下查找pid有些繁瑣,在尋求更好騷操作的途中,我遇到了JDK的JPS。
jps 與 java 命令一樣,是在jdk/bin目錄下的命令。然后我就去探索了一下。
JPS 簡介
JPS 名稱:
jps - Java Virtual Machine Process Status Tool
命令用法:
jps [options] [hostid]
options:命令選項,用來對輸出格式進行控制
hostid:指定特定主機,可以是ip地址和域名, 也可以指定具體協(xié)議,端口。
[protocol:][[//]hostname][:port][/servername]
功能描述:
jps是用于查看有權(quán)訪問的hotspot虛擬機的進程. 當(dāng)未指定hostid時,默認查看本機jvm進程;查看指定的
hostid機器上的jvm進程,此時hostid所指機器必須開啟jstatd服務(wù)。jps可以列出jvm進程lvmid,主類類名,main函數(shù)參數(shù),jvm參數(shù),jar名稱等信息。jps命令類似與linux的ps命令,但是它只列出系統(tǒng)中所有的Java應(yīng)用程序。 通過jps命令可以方便地查看Java進程的啟動類、傳入?yún)?shù)和Java虛擬機參數(shù)等信息。在 linux 中查看
Java的進程,一般ps -ef | grep java來獲取進程ID。只獲取Java程序的進程,可以直接使用jps命令。window也是一樣的,殺死的命令變?yōu)榱?code>taskkill -f /pid xxx
命令選項及功能:
- -q:只輸出進程 ID
- -m:輸出傳入 main 方法的參數(shù)
- -l:輸出完全的包名,應(yīng)用主類名,jar的完全路徑名
- -v:輸出jvm參數(shù)
- -V:輸出通過flag文件傳遞到JVM中的參數(shù)
沒添加option的時候,默認列出VM標示符號和簡單的class或jar名稱.如下:

-q :僅僅顯示VM 標示,不顯示jar,class, main參數(shù)等信息.

-m:輸出主函數(shù)傳入的參數(shù). 下的hello 就是在執(zhí)行程序時從命令行輸入的參數(shù)

-l: 輸出應(yīng)用程序主類完整package名稱或jar完整名稱.

-v: 列出jvm參數(shù), -Xms20m -Xmx50m是啟動程序指定的jvm參數(shù)

-V: 輸出通過.hotsportrc或-XX:Flags=<filename>指定的jvm參數(shù)
-Joption:傳遞參數(shù)到j(luò)avac 調(diào)用的java lancher.