idea拉取新项目第一次启动报内存溢出(java.lang.OutOfMemoryError: Java heap space)

背景:

新拉取一个项目后,第一次启动的时候报错内存溢出:

Java 堆内存溢出 (java.lang.OutOfMemoryError: Java heap space)

这个错误表示你的 Java 应用程序需要的内存超过了 JVM 堆内存的分配上限。

解决方案

1.增加堆内存大小

bash 复制代码
启动应用时添加JVM参数
java -Xmx2g -Xms1g -jar your_application.jar

结果不行

2.idea.vmoptions(JVM 参数配置)​

bash 复制代码
-Xms512m         # 初始堆内存(建议512M~1G)
-Xmx2048m        # 最大堆内存(建议2G~4G,根据机器配置调整)
-XX:ReservedCodeCacheSize=512m  # 代码缓存大小

作用:

配置 ​​JVM 运行参数​​,直接影响 IDEA 的运行内存和性能。

修改后也需重启 IDEA​​。

结果不行

3.idea.properties(IDEA 属性配置)​​

​​作用​​:

配置 ​​IDEA 自身的运行参数​​,如文件缓存、插件路径等,​​不直接控制 JVM 内存​​。

​​常用配置​​:

bash 复制代码
# 最大文件大小(默认2500,单位KB)
idea.max.intellisense.filesize=5000

修改后也需重启 IDEA​​。

结果不行

4. 增加​​共享构建进程堆大小​

结果可以

总结:

​​编译时内存不足​​:Javac 处理大型项目或复杂注解(如 Lombok)时需要更多内存。我们之前是改了jvm内存大小等等,但是项目启动之前先是编译,编译的时候内存就爆了。所以需要改​​共享构建进程堆大小​

相关推荐
1024奇点9 小时前
【仓颉语言入门 · 第二篇 第 22 课】
开发语言·ide·开源
天河归来10 小时前
第三方接口不稳定,如何让核心任务继续完成
java·大数据
Knight_AL10 小时前
Java 文件下载时文件名中的 `#` 被转换成 `%23`?一次 URL 编码与解码问题排查
java·开发语言
砚底藏山河11 小时前
python量化自定义周期 K 线合成
java·开发语言·数据库·python·金融
猿究院_夏燊12 小时前
MySQL 的四种隔离级别
java·数据库·mysql
码流子12 小时前
移动收费怎么做?手持终端+App+收费中心的架构实践
java·开发语言·架构
霸道流氓气质13 小时前
AI 流式对话与实时聊天平台:SSE 解码竞态、有状态会话隔离与背压取消的 Vue3 + Spring AI 生产级实战
java·人工智能·spring
云创智城-yuncitys13 小时前
YunParking 4.0:JDK 17 与 Spring Boot 3.2 的停车云升级
java·开发语言·spring boot
文丑颜不良啊13 小时前
LeetCode1661~1680题目解析
java·leetcode
子非鱼@Itfuture13 小时前
关于前后端联调中登录状态/登录信息失效?
java·前端