¿Puedo hacer que Tomcat se ejecute como un servicio para volcar el montón?

Estoy intentando que Tomcat, que actualmente se ejecuta como un servicio en un cuadro de Windows 2003, descargue el montón en unOutOfMemoryError.

(Tomcat está ejecutando Hudson, que informa un problema de espacio de almacenamiento dinámico al final de mi compilación. Ejecutar la compilación manualmente no produce dicho error. Los muchachos de Hudson necesitan un volcado de almacenamiento dinámico para comenzar).

Como se indicó en otra parte, le dije al Apache Service Monitor que configure la JVM que usa para ejecutar Tomcat para volcar el montón cuando unOutOfMemoryError se encuentra al agregar lo siguiente a las opciones de JVM: -XX: + HeapDumpOnOutOfMemoryError Luego ejecuto la compilación nuevamente. Efectivamente, informa que hubo un error de montón. Escaneo todo el disco buscando el valor predeterminadojava_pid123.hprof archivo (donde obviamente123 se reemplaza por el PID de la JVM). No.hprof Los archivos existen en cualquier lugar.

Estoy atrapado en una captura 22: necesito el volcado del montón para que los chicos de Hudson arreglen su pérdida de memoria, pero no puedo obtener el volcado del montón si ejecuto Hudson bajo Tomcat.

¿Hay alguna forma especial, cuando Tomcat se está ejecutando como un servicio de Windows, para obtener un volcado del montón en un OutOfMemoryError?

La otra cosa que he intentado es decirle, en las pestañas Inicio y Apagado, que use la opción "Java" en lugar de la opción "jvm". Creo que esto debería decirle al administrador de servicios que intente iniciar Tomcat con un comando ejecutable de Java en lugar de iniciar eljvm.dll directamente. Cuando hago esto, el servicio no se iniciará.

¿Seguramente alguien más ha tenido un problema similar?

Respuestas a la pregunta(7)

Su respuesta a la pregunta