Я пытался сбросить файл кучи, когда в данном процессе Java с использованием Jmap возникает ошибка OutOfMemoryError.
Мне удалось сбросить файл кучи, но я хочу добавить флаг HeapDumpOnOutOfMemoryError в Jmap, но я думаю, что я что-то делаю не так. Я делаю что-то неправильно? Я пробовал:
jmap -J-XX:+HeapDumpOnOutOfMemoryError -dump:live,file=/home/eduardo2/dumpfile.hprof 18763
Когда я запускаю вышеуказанное, он просто говорит следующее, но не ждет OutOfMemoryError:
>> Dumping heap to /home/eduardo2/dump21file.hprof ...
>> Heap dump file created




Вы смешиваете две разные вещи:
jmap для захвата дампа кучи из запущенного процесса, как это делали вы. См. https://docs.oracle.com/javase/7/docs/technotes/tools/share/jmap.html.-XX:+HeapDumpOnOutOfMemoryError на Java-процесс, который вы ожидаете выбросить из OOM. Если возникнет исключение, дамп будет записан в текущий каталог. См. https://docs.oracle.com/javase/7/docs/webnotes/tsg/TSG-VM/html/clopts.html#gbzrr