【问题标题】:Unable to use VisualVM profiler with Maven Jetty plugin无法将 VisualVM 分析器与 Maven Jetty 插件一起使用
【发布时间】:2013-08-09 07:52:46
【问题描述】:

我正在尝试分析使用 mvn jetty:run 和 VisualVM 1.3.6 执行的 Java 7 应用程序。 CPU 显示为不可用,并且配置文件选项卡列出以下错误:

WARNING! Class sharing is enabled for this JVM. This can cause problems when profiling the application and eventually may crash it. Please see the VisualVM Troubleshooting Guide for more information and steps to fix the problem: https://visualvm.java.net/troubleshooting.html#xshare.

我能够正常分析任何其他应用程序。

VisualVM 日志多次显示以下错误:

java.io.IOException: Unable to open socket file: target process not responding or HotSpot VM not loaded

可能相关的细节:
- OSX 10.8.3
- 在 JDK 1.7u25 下运行的应用程序和 VisualVM

我可以推测反对意见与以下事实有关u6。我运行的是 1.7u25,所以这不适用于我。

【问题讨论】:

  • 投反对票是为了什么?我很好奇这个问题!!!
  • 在没有评论、标志或其他改进问题的尝试的情况下拒绝投票是荒谬的。我已经阅读了相关文档,尝试了其中的建议,但发现它们没有帮助。如果问题如此糟糕或答案如此明显,请澄清!

标签: java maven profiling visualvm maven-jetty-plugin


【解决方案1】:

对于 Mac,请尝试传递这些 VM 参数:-Xverify:none -Xshare:off

如果您正在使用 JConsole 和其他 JMX 工具,还包括:

-Xcom.sun.management.jmxremote

通过以下方式找到:http://brian.pontarelli.com/2009/10/21/fixing-java-tools-on-snow-leopard/

【讨论】:

  • -Xverify:none 是我的关键。
【解决方案2】:

在 Mac 上,尝试在 Tomcat 中分析 Web 应用程序并运行 JDK 1.7,我必须添加 -Xverify:none 标志以避免“无法打开套接字文件:目标进程未响应或未加载 HotSpot VM”错误消息.

【讨论】:

    【解决方案3】:

    您在问题中包含的链接 (https://visualvm.java.net/troubleshooting.html#xshare) 有一些建议:

    用于分析的动态附加存在一个已知问题,当启用类共享时,它可能会导致目标 JVM 崩溃。要在没有类共享的情况下启动应用程序,请在启动应用程序的 java 命令中提供 -Xshare:off 参数。

    【讨论】:

    • 是的,但此建议仅适用于 JDK 1.6 的早期版本,不适用于 1.7。
    • 好的。如果您可以确认它对您的情况没有任何影响,那么这将有助于缩小范围。
    猜你喜欢
    • 2021-02-25
    • 2015-08-20
    • 2016-02-28
    • 1970-01-01
    • 2013-02-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-12
    • 1970-01-01
    相关资源
    最近更新 更多