如何获取Java.exe/jvm.dll的符号文件以分析崩溃核心转储文件?

如何获取Java.exe/jvm.dll的符号文件以分析崩溃核心转储文件?,java,websphere,coredump,Java,Websphere,Coredump,我有一个Java应用程序在Websphere应用程序服务器上运行。当我分析系统崩溃核心转储文件时,我得到如下信息: ERROR: Symbol file could not be found. Defaulted to export symbols for J9THR23.dll 如何获取Java的符号文件 提前谢谢 详情如下: ******************************************************************************* *

我有一个Java应用程序在Websphere应用程序服务器上运行。当我分析系统崩溃核心转储文件时,我得到如下信息:

ERROR: Symbol file could not be found.  Defaulted to export symbols for J9THR23.dll 
如何获取Java的符号文件

提前谢谢

详情如下:

*******************************************************************************
*                                                                             *
*                        Exception Analysis                                   *
*                                                                             *
*******************************************************************************

*** ERROR: Symbol file could not be found.  Defaulted to export symbols for J9THR23.dll - 
*************************************************************************
***                                                                   ***
***                                                                   ***
***    Your debugger is not using the correct symbols                 ***
***                                                                   ***
***    In order for this command to work properly, your symbol path   ***
***    must point to .pdb files that have full type information.      ***
***                                                                   ***
***    Certain .pdb files (such as the public OS symbols) do not      ***
***    contain the required information.  Contact the group that      ***
***    provided you with these symbols if you need this command to    ***
***    work.                                                          ***
***                                                                   ***
***    Type referenced: ntdll!_PEB                                    ***
***                                                                   ***
*************************************************************************
*** ERROR: Symbol file could not be found.  Defaulted to export symbols for j9jit23.dll - 
*** ERROR: Symbol file could not be found.  Defaulted to export symbols for java.dll - 
*** ERROR: Symbol file could not be found.  Defaulted to export symbols for j9gc23.dll - 
*** ERROR: Symbol file could not be found.  Defaulted to export symbols for jvm.dll - 
*** ERROR: Symbol file could not be found.  Defaulted to export symbols for jclscar_23.dll - 
*** ERROR: Symbol file could not be found.  Defaulted to export symbols for j9ute23.dll - 
*** ERROR: Symbol file could not be found.  Defaulted to export symbols for J9PRT23.dll - 
*** ERROR: Symbol file could not be found.  Defaulted to export symbols for j9vm23.dll - 
*** ERROR: Symbol file could not be found.  Defaulted to export symbols for DBGHELP.DLL - 

Alice Gong

看起来调试器正在查找PDB文件,据我所知,java应用程序的调试信息不是PDB文件。PDB文件是在创建Windows本机应用程序时由VisualStudio生成的,因此调试器似乎在寻找应用程序服务器的调试符号。不知道WebSphere是否有自己的调试版本。另一方面,如果您想为java应用程序调试符号,只需使用
-g
选项重新编译即可。

您可以在该站点获得JDK的调试版本

http://download.java.net/jdk6/

查找jdk-6u12-ea-bin-b03-windows-i586-debug-22dec2008.jar,91.47 MB


它包括.pdb文件

我从不查看来自websphere的转储文件。通常,应用程序日志包含确定java应用程序失败原因所需的所有信息。您在寻找什么?我相信这里提供的文件不是真正的PDB文件,而是Java二进制文件的完整构建,具有不同的编译选项,其中碰巧包括PDB文件。但这些都无助于查看生产JVM中的现有转储。