【问题标题】:Out of memory error while running gradlew assembleRelease - react-native运行 gradlew assembleRelease 时出现内存不足错误 - react-native
【发布时间】:2019-12-11 11:24:09
【问题描述】:

我在为我的 react native 项目进行发布构建时遇到此错误:

Expiring Daemon because JVM heap space is exhausted
    
> Task :app:transformDexArchiveWithDexMergerForRelease FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:transformDexArchiveWithDexMergerForRelease'.
> java.lang.OutOfMemoryError (no error message)

做了一些研究并做了一些改变,如下:

  1. 在 AndroidManifest.xml 中的应用标签中添加了android:largeHeap="true"

  2. 添加

    dexOptions {
        javaMaxHeapSize "4g" 
    }
    

    在 android/app/build.gradle 文件中。

  3. 将以下代码添加到 gradle.properties

    org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=4096m -XX:+HeapDumpOnOutOfMemoryError
    org.gradle.daemon=true
    org.gradle.parallel=true
    org.gradle.configureondemand=true
    

我仍然无法摆脱这个错误。有什么永久的方法可以消除这个错误,它是怎么引起的??

【问题讨论】:

    标签: java react-native out-of-memory react-native-android


    【解决方案1】:

    配置 gradle.properties:

    org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=4096m -XX:+HeapDumpOnOutOfMemoryError
    org.gradle.daemon=true
    org.gradle.parallel=true
    org.gradle.configureondemand=true
    

    【讨论】:

    • 缓存无效并重启
    • 更新:在反复缓存无效和清除后,它现在可以工作了。 :)
    • 成功了?谢谢。我在构建我们的 RN 应用程序时遇到了 Bitrise 的问题。
    • 该解决方案确实解决了我的问题!
    • 在我的 RN 项目 android/gradle.properties 中,只是取消注释第 13 行 > org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
    【解决方案2】:

    虽然给定的答案对我不起作用,但它确实引导我走向正确的道路。有时构建会通过,但一段时间后此错误会再次出现,因此要一劳永逸地解决它:

    您项目的 gradle 属性中的第一条评论 org.gradle.jvmargs=-Xmx4096m

    在您的 app/build.gradle 中添加以下内容:

    android {
    
      dexOptions {
        javaMaxHeapSize "4g"
      }
    
    }
    

    现在编辑您的全局 gradle.properties for mac,它将位于 Home/YOUR_USERNAME/.gradle/ 中 请注意,.gradle 是一个隐藏文件夹。

    如果文件不存在,只需创建它并添加

    org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
    

    【讨论】:

    • 这对我有用
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多