Android Gradle无法为对象堆保留足够的空间


91

我已经安装了Android Studio 1.1.0。我还没有像启动新的Android应用程序或导入任何东西那样做任何事情。它以某种方式试图构建某些东西,并引发同步错误。

错误:无法启动守护进程。此问题可能是由守护程序的错误配置引起的。例如,使用无法识别的jvm选项。请在http://gradle.org/docs/2.2.1/userguide/gradle_daemon.html上查看守护程序的用户指南一章。

请阅读以下过程输出以了解更多信息:


VM初始化期间发生错误。无法为对象堆保留足够的空间。无法创建Java虚拟机。

我已经检查过,gradle.org/.../gradle_daemon.html但找不到任何可以帮助我解决问题的方法。

这不是内存问题,因为我有8GB的物理内存,并且没有其他程序在运行。


检查您的GRADLE_OPTS环境或gradle.properties,确保它们具有正确的配置(错误提示)。
Al Jacinto

不必设置GRADLE_OPTS,但是,无论我在整个文件系统中查找了gradle.properties还是什么都没有出现。
GummDev

1
gradle不仅读取您的项目gradle.properties,还读取您〜/ .gradle / gradle.properties,您是否也进行了检查?
Al Jacinto

我做了,并且JVM的参数与已经配置的参数相同... -Xmx = 768m,依此类推..
GummDev 2015年

我知道这是一个较晚的答案,但是它是为了帮助可能会遇到此问题的其他人。如果Gradle构建在上次正确完成,请尝试重新启动Android Studio,然后重新启动计算机,然后尝试其他选项。

Answers:


206

对于Android Studio 1.3 :(方法1)

步骤1:在Android Studio项目中打开gradle.properties文件。

第2步:在文件末尾添加此行

org.gradle.jvmargs=-XX\:MaxHeapSize\=256m -Xmx256m

上面的方法似乎可以用,但是如果万一不能用的话(方法2)

步骤1:启动Android Studio并关闭所有打开的项目(“ 文件”>“关闭项目”)。

第2步:在“欢迎”窗口中,转到“ 配置”>“设置”

第3步:转到“ 构建,执行,部署>编译器”

步骤4:将Build进程堆大小(Mbytes)更改为1024,并将VM Options的Additional build process的附加选项更改为-Xmx512m

步骤5:关闭或重新启动Android Studio

已解决-Andriod Studio 1.3 Gradle无法为对象堆保留足够的空间


感谢您的回答...但是我之前曾尝试过此过程,但也没有用。
GummDev

2
尝试方法2,它解决了我的问题。(尝试更改最大堆大小,以防无法使用)。
Faiz Si​​ddiqui

1
@AZ_:不能怪Google。这不是20世纪。事情发展的速度是上世纪的十倍。没有时间追求优雅的品质。此外,您可以免费使用它。您还能问什么?谢天谢地,有stackoverflow :)
Scott Chu

5
我不明白,我找不到任何所谓gradle.properties文件
Majda

5
@Majda说什么。该项目没有名为的文件gradle.properties。有build.gradlesettings.gradlelocal.properties,和gradle-wrapper.properties。我找到此答案的全部原因是因为生成输出显示要编辑项目的gradle.properties,并且项目中 不存在此类文件!
aroth's

31

在gradle.properties中,您甚至可以删除

org.gradle.jvmargs=-Xmx1536m

这样的台词或将其注释掉。让android studio决定。当我遇到同样的问题时,上述解决方案都无法为我解决。注释gradle.properties中的这一行有助于解决该错误。


18

我尝试了几种解决方案,但似乎没有任何效果。将我的系统JDK设置为与Android Studio匹配可以解决该问题。

确保您的系统Java

java -version

与Android相同

File > Project Structure > JDK Location

就我而言(使用32位Android Studio 1.1)使用较旧的jdk路径有效。从1.7到1.6。
罗希特·洛克德

拯救了我的一天!〜现在,我明白了问题出在哪里。这是因为在AS内安装4GB内存和32位jdk之前。现在我有16gb RAM和32位JDK不能启动,因为它必须在启动前初始化我所有的ram。
LPVOID

如何“将我的系统JDK设置为与Android Studio匹配”?
哈伦

18

在下面添加以下行 MyApplicationDir\gradle.properties

org.gradle.jvmargs=-Xmx1024m

这在Windows机器上对我有用。我将gradle.properties从更改org.gradle.jvmargs=-Xmx1536morg.gradle.jvmargs=-Xmx1024m
EmpathicSage '19

11

我在Windows 10上使用Android Studio 3.0.0的修复是从gradle.properties文件中完全删除所有jvm args

我正在使用gradle版本4.1的Android gradle包装器3.0.1。没有gradlew命令在起作用,但是警告说它正在尝试忽略任何jvm内存arg,因为它们在8中被删除(我认为是Java 8)。


1

我遇到了同样的问题,这是我的帖子:

Android Studio-Gradle构建失败-Java堆空间

执行摘要:Windows在此处查找gradle.properties文件:

C:\Users\.gradle\gradle.properties

因此,创建该文件,并添加如下一行:

org.gradle.jvmargs=-XX\:MaxHeapSize\=256m -Xmx256m

按照@Faiz Si​​ddiqui的帖子


0

MacOS 10.12.6上的Android Studio 2.3.3的解决方案

使用更多堆内存启动Android Studio:

export JAVA_OPTS="-Xms6144m -Xmx6144m -XX:NewSize=256m -XX:MaxNewSize=356m -XX:PermSize=256m -XX:MaxPermSize=356m"
open -a /Applications/Android\ Studio.app

不起作用..除了此以外,还有其他我们应该做的事情吗?
Umar Farooque
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.