分析脱机Java堆转储(.hprof)的工具或技巧
是否有任何工具允许对.hprof文件进行脱机分析(包括摘要/排序/筛选)?或者您可以在批处理模式下运行VisualVM、hat等吗 我感兴趣的是一些可以接受输入.hprof文件、处理它并生成报告的东西 我假设您需要传入一系列选项来配置报告,因此如果您知道任何有用的提示,请加入分析脱机Java堆转储(.hprof)的工具或技巧,java,visualvm,heap-dump,Java,Visualvm,Heap Dump,是否有任何工具允许对.hprof文件进行脱机分析(包括摘要/排序/筛选)?或者您可以在批处理模式下运行VisualVM、hat等吗 我感兴趣的是一些可以接受输入.hprof文件、处理它并生成报告的东西 我假设您需要传入一系列选项来配置报告,因此如果您知道任何有用的提示,请加入 最好是可以编写脚本的,这样我就可以一次运行一个包。你能使用jmap-histo吗?您希望提取哪种类型的报告?满足您的所有需求。难以击败。它需要钱,但每一分钱都是值得的。(http://www.eclipse.org/mat
最好是可以编写脚本的,这样我就可以一次运行一个包。你能使用jmap-histo吗?您希望提取哪种类型的报告?满足您的所有需求。难以击败。它需要钱,但每一分钱都是值得的。(http://www.eclipse.org/mat/)这是一条路要走。Check,尤其是JDK6附带了jhat,它可以解析并创建html报告 您可以使用解析/导航
.hprof
文件的内存转储
$ jhat heapdump.hprof
Reading from heapdump.hprof...
Started HTTP server on port 7000
Server is ready.
该工具随JDK一起提供 此外,如果使用IntelliJ IDEA,也可以打开*.hprof内存快照:运行|打开探查器快照|打开
官方文档:jmap-histo不适用于.hprof文件;它需要一个基本上可以帮助识别内存泄漏的PID。顺便说一下,我会说‘最大的对象’——浅的和深的。你能添加命令行开关说“crunch this.hprof offline”吗?在这个常见问题解答中查找ParseHeapDump.sh(.bat on Windows):但是你能“批处理”运行堆转储分析吗,即通过脚本生成报告而不是等待…等待…等待…等待…在加载和搅动时…?通过“offline”是指“headless”吗?我认为“offline”的意思是“在运行的JVM实例的上下文之外”。