Question:
程序在正常运行,用ps -ef | grep xxx的命令可以查看到相关进程信息,但用jps命令却查不到
Answer:
Java程序启动后,会在/tmp目录下生成一个名为hsperfdata_用户名的文件夹,这个文件夹下会有一些以java进程PID命令的文件;
我们在用jps命令查询进程信息,实际上是将这个文件夹下的文件列出来;
因此当这个文件夹为空(可能是不小心删掉了,也可能是这个文件夹的所有者和文件所属组权限与运行java程序的用户权限不一致,这样启动时用户就没有权限写这个文件夹)时,用jps命令就查不出任何数据。修改文件夹权限后重启OK。