我试图运行JConsole的来分析正在运行的进程使用的内存,但JConsole中不显示即使我绝对相信,一个正在运行(除了它应该显示JConsole的进程列表以及但是我处理没有)。
有没有人有一个想法,为什么它没有表现出任何的流程?
干杯
我试图运行JConsole的来分析正在运行的进程使用的内存,但JConsole中不显示即使我绝对相信,一个正在运行(除了它应该显示JConsole的进程列表以及但是我处理没有)。
有没有人有一个想法,为什么它没有表现出任何的流程?
干杯
在窗口提示,运行回声%TMP%,它会给你默认的临时目录。 进入该目录,找到名为目录hsperfdata_哪里是你的登录。 这是目录来存放你的进程ID。 您创建诸如Java应用程序的任何新的过程中会有进程的ID命名的新文件。 jconsole会从这个目录回暖进程ID。 如果你不能在这个目录下创建一个文件,这意味着你需要更改权限,允许写。 一旦做到这一点,开始一个新的Java应用程序,以查看是否有新的进程ID文件在目录。 一旦确认,在启动jconsole
我也有同样的问题。 但是,如果我明确地指定PID,如jconsole 1234
,JConsole的是能够分析的过程。
如果你在Windows上运行JConsole的 - 简单地说:
在我的情况下,去除hsperfdata_USERNAME
目录( %TMP%
目录),并关闭所有的JVM提供了帮助。
这发生在%TMP%值是监视JVM和监控工具(JConsole的/江铃/ Java的任务控制,甚至VisualVM的)不同。 这可能是标准方案使用Cygwin(至少在我的情况:Cygwin的+ Babun)最简单的方法是将TMP环境变量的值设置为Windows使用,在壳启动JVM的范围至少为缺省值。
你必须在启动jconsole使用相同的用户,你要分析是由启动过程中。