可以使用哪些工具来查看内置JVM分析器的输出?例如,我正在启动我的JVM:
-agentlib:hprof=cpu=times,thread=y,cutoff=0,format=a,file=someFile.hprof.txt
这将生成hprof(“JAVA PROFILE 1.0.1”)格式的输出.
过去我已经成功地使用HPjmeter以合理的方式查看这些输出文件.但是,由于任何原因,使用当前版本的Sun JVM生成的文件在当前版本的HPjmeter中无法加载:
java.lang.NullPointerException at com.hp.jmeter.f.jb.a(Unknown Source) at com.hp.jmeter.f.a.a(Unknown Source) at com.hp.c.a.j.z.run(Unknown Source) Exception in thread "HPeprofDataFileReaderThread" java.lang.AssertionError: null pointer exception from loader at com.hp.jmeter.f.a.a(Unknown Source) at com.hp.c.a.j.z.run(Unknown Source)
(为什么会混淆免费产品的字节码?)
有两个问题来自于:
有谁知道这个HPjmeter错误的原因? (编辑:是 – 见下文)
>还有什么其他工具可以读取hprof文件?为什么没有太阳(在那里)?
我知道Eclipse TPTP和其他工具可以即时监控JVMTI数据,但我需要一个可以处理生成的hprof文件的解决方案,因为部署的机器只有一个JRE(而不是一个JDK).
编辑:一个非常有用的HPjmeter开发人员回复了我的question on an HP ITRC forum,表明heap = dump需要临时包含在-agentlib选项中,直到HPjmeter中的错误被修复.这个信息使得HPJmeter再次可行,但是我仍然会打开这个问题,看看有没有人知道任何其他工具.
编辑:从版本4.0.00的HPjmeter(可用05/2009)这个bug已经修复.