2012-06-08 16 views
6

¿Hay alguna forma de generar un archivo de volcado core/heap cuando JVM se cuelga? Dado que estos archivos son generalmente muy útiles para descubrir errores en el código. Cualquier ayuda es apreciada.¿Puede JDK Sun generar archivos de volcado núcleo/montón cuando JVM se cuelga?

Cheng

+2

Salir debido a una modificación es nok a crash. –

+0

¿Se puede "lanzar un nuevo OutOfMemoryError()" generar un archivo de volcado? Lo intenté, pero fallé. De lo contrario, puede proporcionar una situación en la que se pueda generar el archivo de volcado de núcleo/heap. Muchas gracias. – cheng

+0

IBM JVM puede programarse programáticamente para generar estos volcados, que luego puede hacer justo antes de System.exit (0). No sé de una manera independiente del proveedor para hacerlo. –

Respuesta

12

Con las siguientes opciones de JVM:

-XX:+HeapDumpOnOutOfMemoryError 
-XX:HeapDumpPath="/tmp" 

JVM volcar el contenido del montón en un archivo en el directorio especificado. Tenga en cuenta que esto solo ocurre cuando se lanza OutOfMemoryError ya que el volcado no es realmente necesario si la JVM falla debido a un motivo diferente.

Editar: "Las opciones booleanas se activan con -XX: + y se apagan con -XX: -." docs

+0

Me funciona ~ Muchas gracias. – cheng

+3

Debería ser -XX: + HeapDumpOnOutOfMemoryError (con el símbolo más) porque menos en realidad lo desactiva – gerrytan

Cuestiones relacionadas