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

IntelliJ 2022.2.2中Gradle构建报Java堆内存溢出问题求助

Gradle构建“Java heap space”内存不足的永久解决方案

1. 确保Gradle全局配置生效

修改项目级gradle.properties可能被全局配置覆盖,建议直接调整全局gradle.properties,确保配置对所有Gradle项目生效:

  • Windows路径:C:\Users\<你的用户名>\.gradle\gradle.properties
  • macOS/Linux路径:~/.gradle/gradle.properties
    在文件中添加或更新以下配置:
org.gradle.jvmargs=-Xmx6144M -XX:MaxMetaspaceSize=2048M -XX:+HeapDumpOnOutOfMemoryError
systemProp.sonar.host.url= {sonar_url}
systemProp.sonar.login={login_details}
  • -Xmx6144M将堆内存提升至6G(可根据机器配置调整为8G),-XX:MaxMetaspaceSize=2048M解决元空间内存不足问题,-XX:+HeapDumpOnOutOfMemoryError用于后续排查内存泄漏。

2. 单独配置IDEA中Gradle的运行参数

IDEA自身的内存设置和Gradle构建进程的内存相互独立,需单独配置:

  • 打开IDEA的File → Settings(快捷键Ctrl+Alt+S)
  • 进入Build, Execution, Deployment → Build Tools → Gradle
  • 在Build and run using和Run tests using选项中选择Gradle
  • 在Gradle JVM下拉框选择与项目兼容的JDK(Gradle 8.1要求JDK 11及以上版本)
  • 在VM options中输入:-Xmx6144M -XX:MaxMetaspaceSize=2048M
  • 保存设置后重启IDEA

3. 优化多模块构建的内存占用

在项目级gradle.properties中添加以下配置,减少不必要的内存消耗:

org.gradle.caching=true
org.gradle.parallel=true
org.gradle.configureondemand=true
org.gradle.daemon=true
  • org.gradle.caching=true:启用构建缓存,避免重复执行相同任务
  • org.gradle.parallel=true:并行构建多模块,提升效率同时降低单进程内存压力
  • org.gradle.configureondemand=true:按需配置模块,减少初始化阶段的内存占用
  • org.gradle.daemon=true:启用Gradle守护进程,复用进程减少内存重复分配

4. 排查依赖与注解处理器的内存问题

部分第三方依赖或注解处理器可能存在内存泄漏,可通过以下方式定位:

  • 临时添加--no-build-cache参数执行构建,排除缓存导致的异常
  • 逐个禁用模块的构建任务,定位内存占用过高的模块,针对性检查该模块的依赖
  • 升级注解处理器版本(如Lombok、MapStruct等),新版本通常修复了内存泄漏问题

5. 验证配置是否生效

执行构建时添加--info参数,查看Gradle实际使用的JVM参数:

./gradlew build --info

在输出日志中查找Starting Daemon相关内容,确认-Xmx和MaxMetaspaceSize参数已生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 09:47:20