IntelliJ构建Gradle项目遇Java堆内存溢出异常的解决方法
以下是几个直接有效的解决方法,按优先级排序:
修改Gradle VM参数(IntelliJ专属配置)
打开IntelliJ的设置:File→Settings(Windows/Linux)或IntelliJ IDEA→Settings(Mac),依次进入Build, Execution, Deployment→Build Tools→Gradle。找到Gradle VM options输入框,添加堆内存配置,比如:-Xmx4g -XX:MaxMetaspaceSize=1g这里
-Xmx4g表示给Gradle分配4GB堆内存,可根据你的机器内存调整(比如8GB内存的话设成-Xmx6g)。在项目中配置gradle.properties(全局生效)
如果不想依赖IDE配置,直接在项目根目录下创建或编辑gradle.properties文件,添加以下配置:org.gradle.jvmargs=-Xmx4096m -XX:MaxMetaspaceSize=512m org.gradle.parallel=true # 可选,开启并行构建提升效率这个配置会被Gradle自动读取,不管用IntelliJ还是命令行构建都生效。
调整IntelliJ构建进程的堆内存
有时候溢出的是IDE自身的构建进程内存,而非Gradle进程。进入Settings→Build, Execution, Deployment→Compiler,找到Build process heap size,把数值调高(比如从默认的700MB改成2048MB或4096MB),点击Apply保存。检查运行配置的VM参数(针对运行阶段溢出)
如果是运行项目时出现溢出,而非构建阶段,需要编辑对应的Run Configuration:点击右上角的运行配置下拉框 →Edit Configurations,在VM options里添加-Xmx2g(或更大值),比如:-Xmx2048m
注意:调整内存时不要超过你的物理内存的一半,避免系统卡顿。比如你机器是16GB内存,给Gradle分配8GB是比较合理的。
内容的提问来源于stack exchange,提问作者lupin

