构建APK时出现java.lang.OutOfMemoryError无提示错误该如何解决?
安卓构建APK触发OOM错误修复方案
你遇到的报错翻译如下:
执行任务
:app:packageDebug失败执行
com.android.build.gradle.tasks.PackageAndroidArtifact$IncrementalSplitterRunnable时发生故障java.lang.OutOfMemoryError(无错误提示信息)
- 尝试操作:
加--stacktrace参数运行可获取堆栈跟踪,加--info或--debug参数运行可获取更多日志输出,加--scan参数运行可获取完整分析信息
修复步骤
调整Gradle运行时JVM堆内存:
打开项目根目录下的gradle.properties文件,修改或新增如下配置,4GB内存是多数场景的适配值,配置更高的电脑可将-Xmx参数调整为6144m:org.gradle.jvmargs=-Xmx4096m -XX:MaxMetaspaceSize=1024m保存后重启Android Studio重新构建即可。
如上述配置后仍报错,可额外调整dex编译内存阈值:
打开app模块下的build.gradle文件,在android配置块中添加如下配置:android { // 原有其他配置保持不变 dexOptions { javaMaxHeapSize "4g" } }临时验证方案:
如急需构建测试,可先在gradle.properties中添加如下配置关闭增量构建和新APK打包器,降低运行时内存消耗:android.enableBuildCache=false android.useNewApkCreator=false后续需要提升构建速度时可按需删除上述配置即可。
额外优化建议:
清理项目中未使用的第三方依赖,构建前先执行Clean Project清理冗余构建缓存,也能降低构建时的内存开销。
内容的提问来源于stack exchange,提问作者atozcodes
相关产品推荐
相关产品推荐

