android - Unity3d Android Java堆空间错误

标签 android unity3d android-gradle-plugin

我有一个有 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 构建中遇到过这种问题吗?

enter image description here

添加build设置屏幕截图:
enter image description here

最佳答案

我收到了这个错误,因为 JVM(例如在其中执行 gradle)超出了 RAM 限制。

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

希望这可以帮到你

关于android - Unity3d Android Java堆空间错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51564175/

相关文章:

android - ProgressBar 不工作 - Android

android - 错误 : "duplicate entry: android/support/v7/appcompat/R$anim.class"

c# - 是否可以在 Unity3d 中访问 Photoshop 文件 (.psd)?

debugging - 在 Emacs 中使用 Mono 软调试器

ios - 启用位代码是否会减小 Unity IOS 构建的原始大小

android - 禁用依赖权限

android - 构建build.gradle文件后无法将Eclipse中的Android项目导入到Android Studio

java - 无法实例化应用程序 java.lang.RuntimeException :. ..BackupDB 无法转换为 android.app.Application

java - 如何更改 AlertDialog 消息的颜色?

java - 在 Android 中的模式上使用 OR