当前位置: 首页 > 知识库问答 >
问题:

在 Intellij IDEA 中不断收到 Gradle 错误“无法为对象堆保留足够的空间”

松增
2023-03-14

所以我在内存分配方面遇到了问题。有时它有效,有时不起作用。我已经阅读了这个帖子,并多次尝试了那里的建议。有时-Xms512m-Xmx768m有效,有时-Xms256m-Xmx512m。我厌倦了不得不在IntelliJ的构建、执行、部署下调整这个设置

我的Windows7计算机上有16GB内存,我运行的是IntelliJ IDEA EAP 14内部版本138.2210.3,64位版本。Android Gradle构建插件v0.12。

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

编辑:

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


共有3个答案

鲍飞星
2023-03-14

虽然这个问题有点老,但我想提出问题的(可能的)根源:JVM在启动时请求一整块内存。如果找不到它,就会出现“无法保留……”错误。约翰·帕普在IBM的开发博客上写了一篇关于这个问题的启发性文章: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:使用32位Java,使用较小的XMX量。在斜坡上。我刚刚使用的属性文件org.gradle。jvmargs=-Xmx150m和Gradle没有问题
姜鹏程
2023-03-14

安装64位Java为我解决了这个问题

花高爽
2023-03-14

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

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

_JAVA_OPTIONS=-Xmx512M
  1. 右键单击开始按钮并打开“系统”
  2. 搜索“高级系统设置”并打开它
  3. 单击“环境变量…”按钮
  4. 在系统变量中,单击“新建…”
  5. 新变量名:_JAVA_OPTIONS
  6. 新变量值:-Xmx512M
  7. 点击确定
  8. 重新启动Visual Studio,以便选择变量

这篇文章给我指出了正确的方向。我确实稍微修改了一下说明,这样它们就能适应Windows 10了。

希望对人有帮助!

 类似资料:
  • 我已经安装了Android Studio 1.1.0。我还没有做任何事情,比如启动新的Android应用程序或导入任何东西。不知何故,它试图构建一些东西,它抛出同步错误。 错误:无法启动守护进程。此问题可能是由于守护进程配置不正确造成的。例如,使用了一个无法识别的jvm选项。请参阅http://gradle.org/docs/2.2.1/userguide/gradle_daemon.html中关

  • 问题内容: 每次尝试运行该程序时,我都会反复收到以下异常。 VM初始化期间发生错误 无法为对象堆保留足够的空间 无法创建Java虚拟机。 我试图增加虚拟内存(页面大小)和RAM大小,但无济于事。 如何消除此错误? 问题答案: 使用或任意数量)(或简称)运行JVM

  • 这是在“Gradlew Build”期间在Android Studio中发生的。 错误:“VM初始化时发生错误,无法为3174400KB对象堆保留足够的空间”(3.18GB) 项目文件夹本身只占用1.1GB,所以我不知道这是怎么可能的。 更新:这个问题似乎已经自行解决。

  • 我试图为Android生成一个发布版本,但是在命令之后:“离子科尔多瓦构建 - 发布机器人”我有例外: 我试过这个:开始-

  • 所以我不知道我点击了什么,但在我点击之后,所有的东西,就像字面上所有的东西都停止工作了。 当前错误消息: 错误:无法启动后台进程。此问题可能是后台进程配置不正确造成的。例如,使用了一个无法识别的jvm选项。请参阅https://docs.gradle.org/5.4.1/userguide/gradle_daemon.html中关于后台进程的用户手册章节:进程命令行:C:\Program File

  • 问题内容: 只是面临奇怪的问题。当我键入 我有 。 这个命令工作正常 如果我将xms,xmx更改为128m,则会再次出现错误。 使用命令,我可以看到,我有超过192 MB的空闲空间,那么为什么我仍然收到此错误? 谢谢 问题答案: 您尝试在其上运行此计算机的机器似乎只有256 MB内存。 也许JVM试图分配一个大的,连续的64 MB内存块。可用的192 MB可能会分成较小的碎片,因此不会有连续的64