来自 JVM 崩溃的日志文件包含各种对调试有用的信息,例如加载的共享库和完整的环境。我可以强制 JVM 以编程方式生成其中之一吗?通过执行使其崩溃的代码或其他方式?或者以另一种方式访问相同的信息?
DJClayworth
问问题
9833 次
4 回答
8
您可以尝试抛出 OutOfMemoryError 并添加 -XX:+HeapDumpOnOutOfMemoryError jvm 参数。这是从 1.6 开始的新工具,McDowell 建议的其他工具也是如此。 http://blogs.oracle.com/watt/resource/jvm-options-list.html
于 2008-12-04T19:43:22.330 回答
2
查看JDK Development Tools,特别是用于转储堆、打印配置信息等的故障排除工具。
于 2008-12-03T17:11:39.487 回答
0
我很确定这可以使用 IBM JDK 完成,因为我前段时间正在使用他们的堆栈分析器。强制转储的一种选择只会导致 outOfMemoryException。
这些工具可能会提供一些线索http://www.ibm.com/developerworks/java/library/j-ibmtools1/
于 2008-12-03T16:45:47.620 回答
0
在 Ubuntu 20.04.1 LTS 上,我通过以下方式强制 jdk 11 进程上的核心转储
kill -4 <PID>
于 2021-05-09T11:18:39.907 回答