Android Studio Gradle 项目“无法启动守护进程/VM初始化”

115

Android Studio(Beta)0.8.4版本
操作系统版本:Windows 8
Java JRE/JDK版本:1.8.0_11

Error:Unable to start the daemon process.
This problem might be caused by incorrect configuration of the daemon.
For example, an unrecognized jvm option is used.
Please refer to the user guide chapter on the daemon at http://gradle.org/docs/1.12/userguide/gradle_daemon.html
-----------------------
Error occurred during initialization of VM
Could not reserve enough space for 1048576KB object heap
Java HotSpot(TM) Client VM warning: ignoring option MaxPermSize=256m; support was removed in 8.0

我尝试了许多方法都没有成功。当我用另一个JDK替换嵌入式JDK时,问题得到了解决 - 我单独安装了它。在“文件->项目结构-> JDK位置”中进行更改。可能是因为我的嵌入式JDK出现了某些问题。 - Sold Out
38个回答

181

问题已解决:

    1. 在Android Studio中打开项目的gradle.properties文件。
    2. 在文件末尾添加以下行:org.gradle.jvmargs=-Xmx1024m并保存文件。
    3. 关闭并重新打开项目或仅进行清理和重新构建即可。

9
关闭和重新打开项目并不是必须的,你只需要进行一次清理构建就行了。 - Sanket Prabhu
6
这是一个低级内存问题,也是32位环境问题,无法为堆分配太多的内存。在您的项目中,请检查gradle.properties文件(如有必要,请使用较低的数字org.gradle.jvmargs=-Xmx512m)。如果该项目是在64位系统上创建的,则可能需要这样做。然后按照以下步骤在Android Studio中设置较低的默认值,因为它应该具有优先权(文件>关闭项目,然后配置>设置->构建、执行、环境> Android编译器> VM选项> -Xmx512m)。 - Milan Kerslager
3
这对我很有用,之前我一直在增加堆大小,但没有起作用。只有当我减小堆大小时才有效。感谢分享。 - Clive Sargeant
我已经有了"org.gradle.jvmargs=-Xmx1024m",但仍然遇到了问题。我解决了并回答了。 - sifr_dot_in
如果这行已经存在呢? - صلي علي محمد - Atef Farouk

41

按照以下步骤进行操作:

  1. 启动Android Studio。
  2. 关闭任何已打开的项目。转到文件 > 关闭项目。(欢迎窗口将会打开)
  3. 前往“配置”>“设置”。
  4. 在设置对话框中,从左侧选择编译器(基于Gradle的Android项目),然后将VM选项设置为-Xmx512m(即在VM选项下写入-Xmx512m),并按OK。

放置位置


3
这个的解释是什么? - Christopher J.
@Giru Bhai,你能否添加一张截图,告诉我们在哪里写-Xmx512m? - Kartik Watwani
4
在我的Android Studio编译器(基于Gradle的Android项目)中,只是没有显示。 - Surendar D
1
我正在使用Android Studio 2.3.3,但在编译器下无法看到VM选项。有什么帮助吗? - King of Masses
@KingofMasses 请查看此处 https://developer.android.com/studio/intro/studio-config.html 以自定义您的VM选项。 - Giru Bhai
我在关闭所有项目后添加了这个,但仍然存在问题。我解决了并回答了。 - sifr_dot_in

31

我遇到了同样的问题,这是因为我有一个现有的“.gradle”文件夹,然后我又尝试使用不同的Android Studio版本(以及不同的Java JDK版本),我猜它弄乱了一些东西。

解决方案:删除“.gradle”目录(我的位置是C:\Users\UserName\.gradle),然后重新启动Android Studio。它会自动创建一个新的目录。


3
这个方法有效,但我的“.gradle”文件夹不在用户文件夹下。为了找到“.gradle”文件夹的位置,在Android Studio中,点击“文件”->“设置”,在搜索框中输入“gradle”,你会找到正确的路径。请按此操作。 - Ocean Airdrop
还有一件事。Gradle 不支持 UNC 路径。因此,如果您的路径以 \ 开头,则需要将您的 ".gradle" 目录移动到另一个位置。 - Ocean Airdrop
我的 .gradle 文件夹大小为 5.2 Gbyte。 - Ali Khaki
虽然我之前尝试过这个,但仍然遇到了问题。不过我解决了并回答了。 - sifr_dot_in

16

对于Android Studio 2.2版本,直接从项目结构中无法使用VM选项。

使gradle同步成功的步骤如下:

1)打开项目

2)点击gradle脚本

3)打开gradle.properties文件

4)将org.gradle.jvmargs=-Xmx1536m更改为org.gradle.jvmargs=-Xmx1024m

5)保存工作

6)打开文件->清除缓存/重新启动

就完成了!!!

享受Android吧!!!


15

打开您的项目,按下Ctrl + Alt + Shift + S以打开项目结构。在那里,在JDK位置下勾选使用嵌入式JDK(推荐)


1
曾经为AS 3.0 beta 2工作。谢谢。 - NightFury
1
在Android Studio 3.5更新后,第一次打开时建议我将JDK位置更改为与gradle相同。当我回到嵌入式JDK时,问题得到解决! - Hossein Yousefpour

9

只需要重新启动你的电脑

不确定是什么原因导致了这个问题,我尝试了所有在这里的解决方案,但都没有成功。重新启动电脑可以帮助解决这个问题,我的系统是Windows 7。

org.gradle.jvmargs=-Xmx2048m已经存在。

更新:

我相信这个问题是在Windows Defender防病毒软件更新(KB915597)后开始出现的。

更新的大约日期是2018年7月22日。


5
这与AS可用内存有关,以创建一个VM环境供您的应用程序填充。自从升级到2.2版后,每次我尝试在AS中创建新项目时都会遇到同样的问题。
我的解决方法是进入“Project(左侧)> Gradle Scripts > gradle.properties”。打开文件后,找到“(第10行)#指定用于守护进程进程的JVM参数。(第11行)#该设置对于微调内存设置特别有用。”下面的一行。您要查找以 “org.gradle.jvmargs” 开头的那一行。这应该是第12行。将第12行更改为:
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

在更改这行代码后,你可以通过点击通知栏上的“再试一次”与项目同步gradle(该通知将位于你打开的文件的顶部)。或者你可以直接关闭并重新启动AS,它应该就会同步。

本质上,这是要求AS在应用程序初始化时分配更多内存。我知道这不是一个永久性的解决方案,但它应该能帮助你真正开始你的应用程序。


4

打开Android Studio,然后进入gradle.properties文件并将最后一行更改为

org.gradle.jvmargs=-Xmx1024m。

然后再次尝试。


4

我曾经遇到过同样的问题。以管理员身份启动Android Studio即可解决。


我该如何取消Gradle的链接?我需要下载最新的Gradle更新吗? - AsimRazaKhan
无法工作,仍然出现相同的错误。Android Studio 版本为 1.3.1。 - PK Gupta

3
打开 Android Studio,然后转到 gradle.properties 文件并将最后一行更改为:
org.gradle.jvmargs=-Xmx1024m.

然后前往

文件>无效缓存/重启.

问题将会被解决,这对我来说效果很好。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接