执行./gradlew assembleRelease时Task :app:bundleDevReleaseJsAndAssets失败
解决React Native Android打包失败及react-native命令不可用问题
先处理react-native命令未识别问题
- 全局安装react-native-cli:执行
npm install -g react-native-cli或yarn global add react-native-cli;若不想全局安装,后续所有react-native命令替换为npx react-native - 检查系统环境变量
PATH是否包含Node.js的全局bin目录(Windows下通常是C:\Users\你的用户名\AppData\Roaming\npm),若未添加,手动加入后重启终端
解决打包时Task :app:bundleDevReleaseJsAndAssets失败问题
1. 修复路径被识别为命令的错误
- 检查项目路径是否存在空格、特殊字符,若有,将整个项目迁移到无空格/特殊字符的目录(比如从
C:\Users\CABBAR\Documents\github移至D:\RN_Projects\MyApp) - 打开
android/app/build.gradle,检查bundleDevReleaseJsAndAssets相关配置,确认路径引用无语法错误(比如引号缺失、路径拼接错误)
2. 解决java.lang.StackOverflowError
- 编辑
android/gradle.properties文件,添加/修改JVM堆内存配置:
增大堆内存避免栈溢出org.gradle.jvmargs=-Xmx4096m -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
3. 手动预打包JS资源后再执行构建
- 执行手动bundle命令生成资源:
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/ - 若命令执行成功,再运行
cd android && ./gradlew assembleRelease
额外排查步骤
- 执行
npx react-native info查看环境信息,确认Node.js、Yarn、Gradle版本与当前React Native项目版本兼容 - 清理gradle缓存:删除
android/.gradle目录后重新执行构建
内容的提问来源于stack exchange,提问作者Ömer Faruk Demirsoy
相关产品推荐
相关产品推荐

