jps命令查询不到正在运行的 java 进程

Linux中,

在 Java 程序启动后,tmp目录下会生成一个名为hsperfdata_用户名的文件夹,在这个文件夹中会有一些以 java 进程pid命名的文件。在我们使用jps命令查询进程信息的时候,实际上就是将这个文件夹下的文件列出来,因此当这个文件夹为空或者这个文件夹的所有者和文件所属组权限与运行 Java 程序的用户权限不一致时,jps命令就查询不到该进程了。

解决的方法:
修改文件夹的权限,或使用sudo jps命令以root权限执行jps命令。

window中:

可能存在以下两个目录下

(1)C:\Users\用户\AppData\Local\Temp\hsperfdata_用户
(2)C:\Windows\hsperfdata_用户

jps 只能查到第一个路径下的pid
若需要再HSDB下显示(2),直接填(2)路径下的pid

开启/关闭hsperfdata_用户名文件生成

-XX:+UsePerfData、-XX:-UsePerfData

HSDB 启动

Jdk1.8 启动 JHSDB 的时候必须将 sawindbg.dll(一般会在 JDK 的目录下)复制到对应目录的 jre 下
C:\Program Files\Java\jdk1.8.0_101\lib 进入命令行,执行 java -cp .\sa-jdi.jar sun.jvm.hotspot.HSDB

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值