How can I suppress the creation of the hs_err_pid file?
We are running a java application under java 1.6.0_13. When it crashes it creates the normal hs_err_pid file. I don't want this file created even if the application crashes. Is there a way on the java command line to sup开发者_JAVA技巧press this? I am familiar with -XX:ErrorFile option. If I set this to an empty string will that suppress it?
If you are using a Unix/Linux system, try setting -XX:ErrorFile
to /dev/null
(or, if you are using Windows, try NUL
).
With Oracle HotSpot (since 6b21
) and OpenJDK, the -XX:+SuppressFatalErrorMessage
option should be used for preventing creation of the hs_err_pid
file.
Nowadays, using -XX:ErrorFile=/dev/null
will actually not work as expected, since if the file path specified to ErrorFile
exists, the JVM will not attempt to overwrite it and will fall back to the default hs_err_pid
location (there's no special case handling for /dev/null
).
For more details, see also:
- Why java ignored the option “-XX:ErrorFile=/dev/null”?
- Oracle ticket, JDK-6194668: Add java runtime flag
SuppressFatalErrorMessage
to skip all error handling logic on fatal error - OpenJDK ticket, JDK-8189672:
-XX:ErrorFile
doesn't work.
精彩评论