React Native安卓生产构建失败:任务报错及StackOverflowError
React Native安卓生产包构建失败解决方案
一、修复Gradle与8.0的兼容问题
- 升级Gradle及插件版本:
- 打开
android/gradle/wrapper/gradle-wrapper.properties,将distributionUrl替换为Gradle 8.x版本的地址,例:distributionUrl=https\://services.gradle.org/distributions/gradle-8.2-all.zip - 打开
android/build.gradle,更新Android Gradle插件版本到适配8.x的稳定版,例:dependencies { classpath("com.android.tools.build:gradle:8.2.0") // 其他依赖保持不变 } - 检查第三方插件,替换掉依赖废弃Gradle特性的旧插件,比如升级React Native到对应兼容版本。
- 打开
二、解决Task :app:createBundleReleaseJsAndAssets执行失败
- 单独执行JS打包命令定位具体错误:
在项目根目录运行:
命令会输出JS打包的具体问题(比如语法错误、缺失模块),根据提示修复代码或依赖。npx react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/ - 清理缓存后重试:
依次运行:
之后再执行npx react-native clean cd android && ./gradlew clean./gradlew assembleRelease。
三、解决java.lang.StackOverflowError
- 增大Gradle堆内存:
打开android/gradle.properties,添加或修改堆内存配置:org.gradle.jvmargs=-Xmx4096m -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 - 排查递归或循环依赖问题:
检查自定义Native Module是否有无限递归逻辑,或者Gradle脚本中是否存在循环依赖,逐一排查修复。
内容的提问来源于stack exchange,提问作者Sabith VK
相关产品推荐
相关产品推荐

