如何解决 Unity Editor 中使用 Gradle 打包出现 Heap Space 不足的错误
最近在自己的开发机上和公司内部用的打包的机器上都出现了通过 Unity Editor 提供的 Gradle 打包流程打包 APK 文件时提示 Java Heap Space Error 的问题。
输出的错误日志内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
Running dex as a separate process. To run dex in process, the Gradle daemon needs a larger heap. It currently has 1024 MB. For faster builds, increase the maximum heap size for the Gradle daemon to at least 2560 MB (based on the dexOptions.javaMaxHeapSize = 2g). To do this set org.gradle.jvmargs=-Xmx2560M in the project gradle.properties. For more information see https://docs.gradle.org/current/userguide/build_environment.html :mergeDebugJniLibFolders UP-TO-DATE :transformNativeLibsWithMergeJniLibsForDebug :processDebugJavaRes NO-SOURCE :transformResourcesWithMergeJavaResForDebug :validateSigningDebug :packageDebug Expiring Daemon because JVM Tenured space is exhausted Daemon will be stopped at the end of the build after running out of JVM memory :packageDebug FAILED BUILD FAILED Total time: 1 mins 26.532 secs Expiring Daemon because JVM Tenured space is exhausted ] exit code: 1 |
那就按照它的提示把 gradle 的配置修改一下吧,由于我使用的开发机和公司的打包机器都是 macOS 系统,所以只需要在 ~/.gradle 目录下的 gradle.properties 文件(如果该目录下没有这个问题件,可以通过 touch gradle.properties
命令创建)中新增下面的这行配置即可:
1 2 |
org.gradle.jvmargs=-Xmx2048m |