今天更换JDK,发现使用jmap -heap pid命令的时候报错:
Error attaching to process: sun.jvm.hotspot.debugger.DebuggerException: Can't attach to the process
很奇怪,我用的已经是hotspot了,不存在用其他JVM导致的问题。于是请运维人员用root权限执行了一下,发现是可以执行的。这说明只可能是执行的环境问题了。在暂时没辙的情况下,请运维人员给了个sudo,来执行。最后,发现我们服务器的内核不一样……安全内核有ptrace的限制,就用不了,只能用root,我去……