You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否通过JVM参数自定义崩溃minidump的输出路径与命名规则?

Java 8u60 32位版本minidump输出路径配置解答

核心结论

  • Oracle JDK/OpenJDK 8 全版本(包括你使用的8u60 32位版本)中,-XX:+CreateMinidumpOnCrash生成的minidump文件不支持通过独立JVM参数自定义输出路径与命名规则,你此前查阅资料得到的初步判断准确。
  • 该参数触发生成的Windows平台minidump,默认写入JVM进程的当前工作目录,文件名为固定格式hs_err_pid<进程ID>.mdmp。

可用替代方案

如果需要将minidump定向到无写保护的D盘路径,可通过以下两种方式实现:

  1. 调整JVM启动的工作目录
    启动JVM前先切换到目标D盘路径,再执行Java启动命令,minidump会自动输出到当前工作目录下。Windows平台操作示例:
D:
cd D:\jvm_dump\
java -XX:+CreateMinidumpOnCrash -XX:ErrorFile=D:\jvm_dump\hs_err_pid%p.log -jar 你的应用包.jar
  1. 配置Windows系统全局崩溃转储规则
    全局规则优先级高于JVM自身的minidump生成逻辑,配置后所有java.exe进程的崩溃转储都会定向到指定路径:
  • 打开注册表编辑器,定位到路径HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps
  • 新建名为java.exe的子项,在子项内新建两个注册表值:
    • 字符串值DumpFolder,数值数据设为D:\jvm_dump\
    • DWORD值DumpType,数值数据设为2(对应完整转储)

版本差异说明

JDK 9及以上版本官方新增了-XX:MinidumpPath参数,专门用于自定义minidump输出路径,但该参数没有向后兼容到JDK 8的任何更新版本,无法在8u60版本中使用。

内容的提问来源于stack exchange,提问作者Jake Henry

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 13:42:02