获取核心文件

时间:2010-04-06 11:06:14

标签: java aix

我在AIX机器上运行Core JAVA应用程序,它创建了一个名为“core”的文件。 我担心的是 1.我无法在“堆分析器”或“线程分析器”中打开此“核心”文件。 2.我需要使用哪些工具,以便我可以分析这个“核心”文件。 3.任何人都可以详细说明这个档案吗?为什么这个“核心”文件会创建。

等待回复..... 非常感谢

1 个答案:

答案 0 :(得分:4)

core file表示JVM崩溃时记录的内存状态(即非Java级别信息,可在分析工具中进行分析)。这种类型的文件指示JVM中的错误或您通过JNI从Java应用程序中调用的本机库的问题。

您可以运行的一个命令是:

strings core | grep JAVA_HOME

...至少会告诉你哪个版本的JVM正在运行(因此可能负责核心转储)。

您也可以尝试在不同的操作系统或同一平台上运行您的应用程序,但使用不同版本的JVM来验证是否是导致崩溃的原因。

您可能还想查看this question,其中chillitom描述了一种将核心文件转换为HPROF文件的技术,以便使用Java内存分析器应用程序对其进行分析。这需要使用jmap命令行工具; e.g。

# jmap -dump:format=b,file=dump.hprof /usr/bin/java core.1234