【问题标题】:visualvm cannot see a java process launched from cygwinvisualvm 看不到从 cygwin 启动的 java 进程
【发布时间】:2011-07-13 09:58:52
【问题描述】:

如果我在 cygwin 控制台中启动 java 进程,然后启动 visualVm,​​则后者看不到前者。

如果我在 Dos 控制台中启动相同的进程,visualvm 会很好。我在jdk1.6.0_25。这在 win7 32b 和带有 64b jvm 的 win7 64b 中都会发生。

谁能想到解释/解决方法?

【问题讨论】:

  • 都来自同一个系统用户?
  • 任何参数?如果从 cygwin 启动 visualVM 会发生什么? (如果通过 jmx-connection 显式引用它会发生什么?鼠标右键单击“添加 JMX 连接”)
  • @FlorianOver:好点。我有同样的问题,但是如果我从 Cygwin 内部启动 JVisualVM,我可以看到从 Cygwin 启动的 Java proc。但是,我没有看到在 Cygwin 之外启动 Java procs。奇怪...
  • 这是因为 Java 使用目录 (hsperfdata_USERNAME) 来保存 Visualvm 使用的信息。通常它位于 %userprofile%/AppData/Local/Temp 中。出于某种原因,在 cygwin 下,Java 和 visualvm 在 /tmp 中查找该目录。无法弄清楚 Java 是如何知道 /tmp 的。
  • 哇哦!多年来,我一直认为是 Gradle 以某种方式使启动的 Java 进程不被调试。 (相对于从 IDE 运行。)我永远不会猜到这是 cygwin / temp 目录问题。

标签: java visualvm jdk-tools


【解决方案1】:

我通过在 Cygwin 中运行 VisualVM 解决了这个问题。如果您不想使用远程 JMX 连接进行分析,则可以使用 Cygwin 运行 VisualVM 和 Java 程序:

打开 Cygwin 控制台窗口,导航到 visual_vm.exe 并在 Cygwin 环境中运行该文件。

【讨论】:

  • 或者干脆 $JAVA_HOME/bin/jvisualvm
【解决方案2】:

我遇到了同样的问题。 vm 没有自动显示,但我能够通过“添加 JMX 连接”使用主机名和 jmx.remote.port 进行连接...

在 VisualVM 上转到文件 -> 添加 JMX 连接

localhost:3333

在启动时添加vm参数例如:

 -Dcom.sun.management.jmxremote.port=3333
 -Dcom.sun.management.jmxremote.ssl=false
 -Dcom.sun.management.jmxremote.authenticate=false

【讨论】:

    【解决方案3】:

    VisualVM 可以自动检测在同一用户下运行的本地应用程序。所以一种解释可能是 cygwin 进程在不同的用户下运行。确保 VisualVM 和受监控的应用程序都在 JDK 6 更新 25 下运行。JDK 6 更新 25 修复了以下JDK bug #6938627,这可能会影响您的情况。

    【讨论】:

      【解决方案4】:

      @seanhodges 答案的相反方法是启动应用程序以使用修改后的环境进行调试,将其指向您的 Windows 用户临时目录

      例如,如果您通常这样做:

          ./gradlew run
      

      并说您在 Windows 上的 TEMP 目录(根据您的用户环境变量)是:

          T:\Temp
      

      您可以改为执行以下操作之一:

          TMP=T:\\Temp ./gradlew run
      
          TMP=/cygdrive/t/Temp ./gradlew run
      

      (它们似乎都有效)

      【讨论】:

        猜你喜欢
        • 2012-04-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-04-13
        • 2011-03-15
        • 1970-01-01
        相关资源
        最近更新 更多