android studio 4.2.2 编译的项目的时候,出现的内存不足问题,实际上android studio会有引导设置内存大小,可能都不太在意在哪个地方,设置完就完事了,在不提示的情况下可能找不到在哪设置,在此记录一笔。
出错提示:
Out of memory: Java heap space. Configure Gradle memory settings using ‘-Xmx’ JVM option (e.g. ‘-Xmx2048m’.)
Please fix the project’s Gradle settings.
Gradle settings
解决办法
1. 通过可视化界面去设置,
- mac 电脑:Android Studio->preferences… (快捷键:command+,)
- windows电脑: File->Settings (快捷键:Ctrl+Alt+S)
打开如下设置界面
右侧3个框里面选择为识别到的大小或更高一点的即可,记住设置之后确定并重启androidstudio 生效。
2. 配置gradle.properties文件
打开工程目录下的gradle.properties文件,添加如下代码
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
其中可以根据情况修改上述代码中的2048为其他数值。
如果不存在gradle.properties,那么新建一个,并将下面代码copy到文件中,此处是鄙人机器的配置,所以org.gradle.jvmargs=-Xmx1536m 对应的是1536,请根据机器配置修改,建议2048或更高。
## Project-wide Gradle settings.
#
# For more details on how to configure your build environment visit
# http://www.gradle.org/docs/current/userguide/build_environment.html
#
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
# Default value: -Xmx1024m -XX:MaxPermSize=256m
# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
#
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
# org.gradle.parallel=true
#Thu Dec 29 17:35:26 CST 2016
org.gradle.jvmargs=-Xmx1536m -Dfile.encoding=UTF-8
从注释中也可以看出如果修改以及默认数值:
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
# Default value: -Xmx1024m -XX:MaxPermSize=256m
# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError >-Dfile.encoding=UTF-8