背景:测试在jekins上自动化部署,在杀进程的时候没杀掉,又起了一个新的。
查看得知用的是jdk的jps发现进程
在当前用户下执行jps,发现没有显示任何内容。
程序启动后。默认会在/tmp/hsperfdata_当前用户名目录下该进程的id为文件名新建文件,并在该文件中存储jvm运行相关信息。hsperfdata_当前用户名,存放该用户所有启动的的java信息。对于windows机器,/tmp用Windows存放临时文件目录代替
而jps,jconsole,jvisualvm等工具来源就是进程号的文件
所以当文件不存在或者无法读取时就会出现jps无法查看该进程号,jconsole无法监控等问题。
sudo chmod 755 hsperfdata_*