IntelliJ IDEA 运行时的 JVM 本地内存溢出崩溃

1. 找到 IDEA 内存配置文件

C:\Users\issuser\AppData\Roaming\JetBrains\IntelliJIdea2024.2\idea64.exe.vmoptions

  • 打开「此电脑」,直接复制上面的路径到地址栏,回车打开;
  • 记事本右键编辑这个文件。

2. 全选删除原有内容,替换为优化配置

bash 复制代码
# 基础内存配置(适配16G内存电脑,核心修复)
-Xms4G
-Xmx6G
-XX:ReservedCodeCacheSize=512m
-XX:CICompilerCount=2
-XX:NewRatio=2
-XX:+UseG1GC
-XX:MaxGCPauseMillis=200

# 修复压缩指针导致的本地内存不足(日志官方推荐参数)
-XX:HeapBaseMinAddress=32g

# IDEA 必需固定参数
-server
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=${idea.home.path}/heapdump.hprof
-XX:-OmitStackTraceInFastThrow
-XX:+IgnoreUnrecognizedVMOptions
-ea
-Dsun.io.useCanonCaches=false
-Djdk.http.auth.tunneling.disabledSchemes=""
-Djdk.attach.allowAttachSelf=true
-Djdk.module.illegalAccess.silent=true
-Dkotlinx.coroutines.debug=off
-Dfile.encoding=UTF-8
-Djna.nosys=true
-Djna.noclasspath=true

# 模块化开放参数(保留不动)
--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED
--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED
--add-opens=java.base/java.io=ALL-UNNAMED
--add-opens=java.base/java.lang=ALL-UNNAMED
--add-opens=java.base/java.lang.ref=ALL-UNNAMED
--add-opens=java.base/java.lang.reflect=ALL-UNNAMED
--add-opens=java.base/java.net=ALL-UNNAMED
--add-opens=java.base/java.nio=ALL-UNNAMED
--add-opens=java.base/java.nio.charset=ALL-UNNAMED
--add-opens=java.base/java.text=ALL-UNNAMED
--add-opens=java.base/java.time=ALL-UNNAMED
--add-opens=java.base/java.util=ALL-UNNAMED
--add-opens=java.base/java.util.concurrent=ALL-UNNAMED
--add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED
--add-opens=java.base/java.util.concurrent.locks=ALL-UNNAMED
--add-opens=java.base/jdk.internal.vm=ALL-UNNAMED
--add-opens=java.base/sun.net.dns=ALL-UNNAMED
--add-opens=java.base/sun.nio.ch=ALL-UNNAMED
--add-opens=java.base/sun.nio.fs=ALL-UNNAMED
--add-opens=java.base/sun.security.ssl=ALL-UNNAMED
--add-opens=java.base/sun.security.util=ALL-UNNAMED
--add-opens=java.desktop/com.sun.java.swing=ALL-UNNAMED
--add-opens=java.desktop/java.awt=ALL-UNNAMED
--add-opens=java.desktop/java.awt.dnd.peer=ALL-UNNAMED
--add-opens=java.desktop/java.awt.event=ALL-UNNAMED
--add-opens=java.desktop/java.awt.font=ALL-UNNAMED
--add-opens=java.desktop/java.awt.image=ALL-UNNAMED
--add-opens=java.desktop/java.awt.peer=ALL-UNNAMED
--add-opens=java.desktop/javax.swing=ALL-UNNAMED
--add-opens=java.desktop/javax.swing.plaf.basic=ALL-UNNAMED
--add-opens=java.desktop/javax.swing.text=ALL-UNNAMED
--add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED
--add-opens=java.desktop/sun.awt=ALL-UNNAMED
--add-opens=java.desktop/sun.awt.datatransfer=ALL-UNNAMED
--add-opens=java.desktop/sun.awt.image=ALL-UNNAMED
--add-opens=java.desktop/sun.awt.windows=ALL-UNNAMED
--add-opens=java.desktop/sun.font=ALL-UNNAMED
--add-opens=java.desktop/sun.java2d=ALL-UNNAMED
--add-opens=java.desktop/sun.swing=ALL-UNNAMED
--add-opens=java.management/sun.management=ALL-UNNAMED
--add-opens=jdk.attach/sun.tools.attach=ALL-UNNAMED
--add-opens=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED
--add-opens=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED
--add-opens=jdk.jdi/com.sun.tools.jdi=ALL-UNNAMED
  1. 保存文件,完全关闭 IDEA 再重新打开
相关推荐
青禾8376 小时前
Git 与 SVN 完全指南:从集中式到分布式的版本控制
分布式·git·svn
2301_800954997 小时前
Git 版本控制核心概念详解:从集中式到分布式
分布式·git
Draw Stars16 小时前
Git BASH安装教程
开发语言·git·bash
Akiyama_Mio-Kon16 小时前
2026 最新:Dify 本地 Docker 部署完整教程(Windows + Git Bash)
windows·git·docker
福如意如我心意21 小时前
Git Worktree开发指南
git
Patrick_Wilson1 天前
为什么gitlab的MR会默认有一个merge commit
前端·git·gitlab
是乐乐啊呀1 天前
版本控制 GIT 和 SVN
git·svn
夜鸣笙笙1 天前
Git详细安装流程
git
瑞码空间2 天前
git知识点黄金笔记
笔记·git·elasticsearch
----云烟----2 天前
Git 提交忽略某些文件方法
git