如何在 Java VisualVM 中显示探查器选项卡? [复制]

Posted

技术标签:

【中文标题】如何在 Java VisualVM 中显示探查器选项卡? [复制]【英文标题】:How to show profiler tab in Java VisualVM? [duplicate] 【发布时间】:2013-05-07 14:25:12 【问题描述】:

我已经启动了一个带有以下参数的 java 应用程序:

java
  -server
  -Dcom.sun.management.jmxremote.port=6789
  -Dcom.sun.management.jmxremote.ssl=false 
  -Dcom.sun.management.jmxremote.authenticate=false
  -Dvisualvm.display.name=MyApp
  -cp <classpath>
  ... application arguments ...

我可以在 jvisualvm 中看到我的应用程序,但 Profiler 选项卡没有显示。

我应该在我的应用程序命令行中添加哪些参数?

JDK 1.6.0_24-b07

【问题讨论】:

【参考方案1】:

这对我没有帮助,在 jdk6 下运行我的应用程序后,我得到了所需的 Profiler 选项卡。 版本必须一致,还要检查一个是 32 位,另一个是 64 位。

【讨论】:

【参考方案2】:

我曾经遇到过同样的问题,在我的场景中,运行我的 java 程序的用户和用于 jvisualvm 的用户是不同的。检查您是否也遇到同样的问题。这是 JVisualVM 文档中的 sn-p。

目标应用程序与 Java VisualVM 在同一主机上运行,​​但由与启动 Java VisualVM 的用户不同的用户启动。 Java VisualVM 使用 jps 工具发现正在运行的应用程序,该工具只能发现由与启动 Java VisualVM 工具的用户相同的用户启动的 Java 应用程序。

【讨论】:

这对我没有帮助,在 jdk6 下运行我的应用程序后,我得到了所需的 Profiler 选项卡。 我也面临类似的问题。是因为我在 Windows 机器上运行 VisualVM,但我想分析位于 EC2 中的 tomcat 应用程序吗?

以上是关于如何在 Java VisualVM 中显示探查器选项卡? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

Java Eclipse RCP 探查器

如何在 Eclipse 探查器中显示 java.lang.* 对象分配?

java,时间单独的if语句和循环而不是带有探查器的方法

如何告诉 visualvm 在哪里可以找到我的源代码?

如何在 VisualVM 中显示调用树?

[转]VisualVM 入门指南