必知必会Java命令-jps

莱莱  金牌会员 | 2024-2-11 13:50:12 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 900|帖子 900|积分 2700

你好,我是阿光。
最近想着把工作中使用过的java命令都梳理一下,方便日后查阅。虽然这类文章很多,但自己梳理总结后,还是会有一些新的收获。这也是这篇笔记的由来。
今天先聊聊 jps 命令。
命令概述⭐

jps命令是JDK提供的一个工具,用于查看目标系统上的Java进程基本信息(进程ID, 启动类,启动参数等)。命令在JDK安装目录的bin目录下,比如在我的window下D:\Java\jdk1.8.0\bin\jps.exe。但JRE没有提供这个命令。不过从Java9模块化开始,已经不区分JDK和JRE了。
这个命令只会检测到目标系统上HotSpot版本的,具有访问权限的JVM信息。
命令的官方文档可查看这个地址The jps Command (oracle.com)
命令用法⛵

我的演示环境是在window11, jdk17版本下
我们可以通过jps -h 或者 jps --help 或者 jps -help查看这个命令的基本用法:
  1. jps --help
  2. usage: jps [--help]
  3.        jps [-q] [-mlvV] [<hostid>]
  4. Definitions:
  5.     <hostid>:      <hostname>[:<port>]
  6.     -? -h --help -help: Print this help message and exit.
复制代码
中括号里的选项都是可选的,最简单的就是jps:
  1. jps
  2. 35936 Jps
  3. 1076  RemoteMavenServer36
复制代码
这里没有指定主机,所以只会查找本地主机上的JVM。第一列是进程ID,第二列是启动类名。可以看到,jps命令本身也是一个Java进程,它的启动类是Jps。
-q选项会让命令只输出进程ID,如下:
  1. jps -q
  2. 35936
  3. 1076
复制代码
-mlvV选项可以任意指定一个,也可以同时指定多个,它们可以随意组合。

  • -m 选项会显示传递给main方法的参数,即程序自定义的一些参数。
  • -l 选项会显示启动类的完整包名称或者启动JAR的完整路径名。
  • -v 选项会显示传递给虚拟机的参数,比如-Dxxx=v形式指定的参数,-Xms128M参数等。
  • -V 大V选项只会输出PID和类名,jps 和 jps -V的输出是一样的。
这里我本地运行了一个Java进程,启动类是Main,并且指定了一些自定义的参数.

  • 列出main方法参数:jps -m
  1. jps -m
  2. 16596 Main test=11 测试参数:a
  3. 18796 Jps -m
复制代码

  • 列出启动类全名:jps -l
  1. jps -l
  2. 16596 com.ggy.softman.Main
  3. 11836 jdk.jcmd/sun.tools.jps.Jps
复制代码

  • 列出虚拟机参数:jps -v
  1. jps -v
  2. 29716 Main -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8
  3. 11388 Jps -Dapplication.home=D:\Java\jdk-17.0.6.10 -Xms8m -Djdk.module.main=jdk.jcmd
复制代码

  • 组合命令,输出信息更丰富:jps -lmv
  1. jps -lmv
  2. 31948 com.ggy.softman.Main test=11 测试参数:a -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8
  3. 29008 jdk.jcmd/sun.tools.jps.Jps -lmv -Dapplication.home=D:\Java\jdk-17.0.6.10 -Xms8m -Djdk.module.main=jdk.jcmd
复制代码
该命令也可以显示远程主机的Java进程信息,只要在命令的最后带上hostid。这种情况基本使用很少,这里也没演示了,可以查看官网文档。
连接远程主机时,远程主机上必须运行jstatd命令。
使用场景
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

莱莱

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表