【问题标题】:Unity3d Android Java heap space errorUnity3d Android Java堆空间错误
【发布时间】:2018-07-27 19:10:47
【问题描述】:

我有一个有 500 毫克 APK 的 unity3d Android 项目。我已经开始出现“Java 堆大小错误”,我知道如何在 Android Studio 中解决这个问题,只需增加 gradle.properties 文件中的大小,但在 Unity 上? Unity 只让你“看到” mainTemplate.gradle 文件。

我正在使用 Unity3d 2018.1.0f2 编辑器。

我也尝试过使用内部构建系统,但是当我这样做时,我的游戏根本无法运行,但构建通过了。

我已经公开了自定义 gradle 文件 (Assets/Plugins/Android/mainTemplate.gradle) 并在 Android 字段中添加了字段和值,如下所示:

dexOptions {
    // Prevent OutOfMemory with MultiDex during the build phase
    javaMaxHeapSize "8g"        
}

但错误仍然存​​在。有人在 Unity Android 构建中遇到过这种问题吗?

添加构建设置截图:

【问题讨论】:

  • 能否提供构建设置窗口的截图?
  • 添加图片
  • javaMaxHeapSize "8g"改成javaMaxHeapSize "4g"?
  • @Programmer 也这样做了。最初是这样的。没有运气。

标签: android unity3d android-gradle-plugin


【解决方案1】:

我收到此错误,因为 JVM(例如执行 gradle 的地方)超出了 RAM 限制。

至少从 Unity 2018.3.x 开始,JVM 的最大 RAM 设置在:Edit->Preferences->External Tools->Maximum JVM Heap Size, Mbytes(默认 4096) 将它增加到 8192 为我解决了这个问题。 (JVM 需要 5.5GB 内存)

希望对你有帮助

【讨论】:

    【解决方案2】:

    Unity 中有一个错误:https://forum.unity.com/threads/unity-2017-3-fails-gradle-build-due-to-java-heap-memory.514916/

    以下内容对我有用:

    Selecting Internal Build instead of Gradle bypassed it for my work.
    

    祝你好运。

    【讨论】:

    • 是的,我也通过了内部构建,但游戏无法运行。它卡在黑屏上,就是这样。
    猜你喜欢
    • 2018-06-16
    • 1970-01-01
    • 1970-01-01
    • 2023-04-07
    • 1970-01-01
    • 2011-10-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多