mac android编译打包时OOM:java heap space的解决方法,亲测有效

作者: 小新

发布于 2020-05-07 | 最后更新 2020-05-07


前言

在使用android studio打包, 或者在命令行执行gradle clean;gradle build/assembleDebug/assembleRelease之类的命令去打包时,总会出现OOM:java heap space的异常导致打包失败。

本文将给出该异常的解决办法,亲测有效。

异常原因

根据异常说明 java heap space 可知,就是打包时 java的堆溢出了

解决办法

既然是java堆溢出,最简单的办法就是调整java虚拟机的配置,将堆的最大值调大一些,就不容易溢出了。

步骤:

1、找到gradle的全局配置文件gradle.properties,并用vim打开。 vim ~/.gradle/gradle.properties

2、增加or修改java虚拟机最大堆的配置。 我这里是设置为4g(电脑总共16g),这个值可以根据你电脑的内存来决定 org.gradle.jvmargs=-Xmx4096M

3、保存并关闭gradle.properties

4、之后再执行打包就不会异常了

5、补充说明: 其实也可以在android studio的项目里修改gradle文件夹下的gradle-wrapper.properties文件,

增加同样的配置org.gradle.jvmargs=-Xmx4096M,然后重启android studio就好了。

不过这样只对该项目生效,所以最好还是使用全局配置。