idea 项目启动慢,报内存溢出,调整jvm参数

idea 项目启动慢,直接报内存溢出了

java: java.lang.OutOfMemoryError: Java heap space

解决方案:调整 idea jvm参数

在IntelliJ IDEA中,可以通过以下步骤来全局设置Java堆大小:

  1. 打开IntelliJ IDEA。

  2. 从菜单栏选择 "Help" > "Edit Custom VM Options..."。如果这是第一次访问,IDEA会提示你创建一个新的配置文件。

  3. 在打开的idea.vmoptions文件中,你可以添加或修改JVM的堆内存设置。例如,增加最大堆内存到1024MB,可以添加以下行:

    复制代码
    -Xmx1024m
  4. 保存文件并重启IntelliJ IDEA以使更改生效。

这样设置后,所有通过IntelliJ IDEA启动的Java应用都会使用这个堆内存设置。

请注意,这个设置是针对IDEA及其启动的Java应用的全局设置。如果你需要为特定项目或运行配置设置不同的堆内存大小,你应该在该项目或运行配置的VM选项中单独设置。

我的idea.vmoptions配置:

java 复制代码
-Xms128m
-Xmx5120m
-XX:ReservedCodeCacheSize=512m
-XX:+UseG1GC
-XX:SoftRefLRUPolicyMSPerMB=50
-XX:CICompilerCount=2
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-ea
-Dsun.io.useCanonCaches=false
-Djdk.http.auth.tunneling.disabledSchemes=""
-Djdk.attach.allowAttachSelf=true
-Djdk.module.illegalAccess.silent=true
-Dkotlinx.coroutines.debug=off

-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log
-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof
-Dapple.laf.useScreenMenuBar=false

调整后:

java 复制代码
-Xms1025m
-Xmx5120m
-XX:ReservedCodeCacheSize=512m
-XX:+UseG1GC
-XX:SoftRefLRUPolicyMSPerMB=50
-XX:CICompilerCount=6
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-ea
-Dsun.io.useCanonCaches=false
-Djdk.http.auth.tunneling.disabledSchemes=""
-Djdk.attach.allowAttachSelf=true
-Djdk.module.illegalAccess.silent=true
-Dkotlinx.coroutines.debug=off

-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log
-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof
-Dapple.laf.useScreenMenuBar=false

-Xms1025m 堆初始化大小

-Xmx5120m 堆最大容量

-XX:CICompilerCount=6 编译器线程数,原来设置了两个编译器线程,这可能不足以充分利用多核CPU的能力。如果机器CPU核心较多,可以考虑增加编译器线程数,以加快编译速度。

相关推荐
Java小白笔记18 小时前
Linux 手动部署 Oracle JDK 17 完全指南
java·linux·oracle
夕除18 小时前
实战--2
java·spring boot·spring
Chase_______18 小时前
【Java杂项】final 关键字详解:变量、方法、类限制与引用可变性
java·开发语言·python
凤山老林18 小时前
DDD(领域驱动设计)在复杂业务系统中的落地指南
java·开发语言·数据库·ddd·领域驱动
JEECG低代码平台18 小时前
JimuChatBI — 首款免费开源的 Java 智能问数ChatBI平台,零成本接入,AI对话式智能分析
java·人工智能·开源·aigc·人工智能低代码
星梦清河19 小时前
Java—异步编程
java·开发语言
疯狂打码的少年19 小时前
CISC vs RISC 对比
jvm·笔记
GIS数据转换器19 小时前
智慧能源管理平台
java·大数据·运维·人工智能·无人机
garmin Chen19 小时前
LeetcodeHot100打卡(14、合并空间,15、轮转数组,16、除了自身以外数组乘积,17.缺失的第一个整数)
java·笔记·学习·算法
接着奏乐接着舞19 小时前
dto 转entity方法
java·开发语言