有没有办法获取正在运行的JVM的参数?
有没有像 jstat 这样的命令行工具,它把 PID 作为输入JVM 并返回其起始参数?我对启动 JVM 时给出的 -Xmx 和 -Xms 值特别感兴趣。
为了澄清我对 JVM 的限制,我们想检查它是否在生产服务器上运行。这就是为什么我们更喜欢最小的干扰。我们能够使用 jstat 监控 JVM,因此我们希望有一个类似的简单解决方案来访问参数。
我们还尝试使用 jvisualvm 获取参数。但是为了连接到远程 jvm,我们需要运行 jstatd 并修改 JVM 的安全设置,我们发现这在生产服务器上非常具有破坏性和风险。
最佳答案
你可以像这样使用 jps:
jps -lvm
它会打印如下内容:
4050 com.intellij.idea.Main -Xms128m -Xmx512m -XX:MaxPermSize=250m -ea -Xbootclasspath/a:../lib/boot.jar -Djb.restart.code=88
4667 sun.tools.jps.Jps -lvm -Dapplication.home=/opt/java/jdk1.6.0_22 -Xms8m
关于java - 获取正在运行的 JVM 的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5317152/