在Intellij IDEA中不断获得Gradle错误"无法为对象堆保留足够的空间"

Nil*_*zor 29 android intellij-idea gradle cordova visual-studio-2015

所以我的内存分配有问题.有时候它有效,有时却没有.我已经阅读过这个帖子并多次尝试了这个建议.有时候-Xms512m -Xmx768m工作有时候-Xms256m -Xmx512m.我厌倦了在Build, Execution, Deployment > Build Tools > Gradle > Gradle VM选项设置下在IntelliJ中调整此设置.有没有设置可以一劳永逸地解决这个问题?

我的Windows 7计算机上有16GB的RAM,我正在运行IntelliJ IDEA EAP 14 build 138.2210.3,64位版本.Android Gradle构建插件v0.12.

我怀疑gradle没有在64位模式下运行,否则它将有大约7 GB的可用内存.为什么不利用这个呢?

编辑:

我在Windows 10下使用cordova 5.1.1Visual Studio 2015中遇到了同样的错误.请参阅下面的解决方案

小智 55

我在Windows 10下使用cordova 5.1.1Visual Studio 2015中遇到了同样的错误.

要解决此问题,请设置此环境变量:

_JAVA_OPTIONS=-Xmx512M
Run Code Online (Sandbox Code Playgroud)
  1. 右键单击开始按钮并打开"系统"
  2. 搜索"高级系统设置"并将其打开
  3. 单击"环境变量..."按钮
  4. 在"系统变量"中,单击"新建..."
  5. 新变量名称:_JAVA_OPTIONS
  6. 新变量值:-Xmx512M
  7. 单击确定
  8. 重新启动Visual Studio,以便拾取变量

这篇文章指出了我正确的方向.我确实更改了指令,因此它们适合Windows 10.

希望它可以帮到某人!


Nil*_*zor 25

安装64位Java解决了它

  • 我安装了32位和64位,32位版本在路径中. (2认同)

deR*_*_Ed 12

虽然这个问题有点旧,但我想提出问题的根本原因:JVM在启动时请求整块内存.如果找不到,则会出现"无法保留..."错误.John Pape在IBM的devblog中写了一篇关于这个问题的精彩文章:https://www.ibm.com/developerworks/community/blogs/aimsupport/entry/why_wont_my_jvm_start_with_this_heap_size?lang = en

这为我解决了这个问题:

  • 变体a:使用64位版本的Java,因此为Java提供了更大的可能连接空闲内存区域
  • 变种b:使用较小的XMX量的32位Java.在我刚刚使用的gradle.properties文件中org.gradle.jvmargs=-Xmx150m,Gradle没有问题.