You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

构建Android版React Native时出现Bad Gateway及依赖缺失问题求助

解决方案

1. 解决react-native-intercom依赖拉取失败问题

你遇到的首个报错根源是旧版本react-native-intercom内置了已停服的Bintray仓库配置,和你项目自身的构建配置无关,按以下方式处理:

  • 优先升级react-native-intercom到最新稳定版,官方新版本已全面适配Bintray停服后的仓库配置,直接升级即可解决该报错
  • 若项目受兼容性限制无法升级版本,可在android/build.gradle的allprojects -> repositories配置块最顶部,新增Intercom官方新仓库配置,优先级高于其他仓库即可:
allprojects {
    repositories {
        // 新增Intercom官方新Maven仓库
        maven { url "https://maven.intercom.io/" }
        // 保留原有其他仓库配置
        google()
        mavenCentral()
        maven { url "$rootDir/../node_modules/react-native/android" }
        maven { url "$rootDir/../node_modules/jsc-android/dist" }
        maven { url "https://www.jitpack.io" }
    }
}

2. 解决yoga、fbjni依赖缺失问题

RN 0.63.4版本的这两个依赖没有上传到MavenCentral,可通过以下两种方案任选其一解决:

  • 方案一:在android/app/build.gradle的dependencies块中,新增强制依赖声明,直接调用RN包内置的对应依赖:
dependencies {
    // 新增以下两行配置
    implementation "com.facebook.yoga:proguard-annotations:1.14.1"
    implementation "com.facebook.fbjni:fbjni-java-only:0.0.3"
    // 原有其他依赖保持不变
}
  • 方案二:在allprojects -> repositories配置块中新增Facebook公共Maven仓库,拉取对应版本依赖:
maven { url "https://maven.facebook.com/repository/public/" }

3. 清理缓存重新构建

配置修改完成后执行以下命令清理缓存,避免旧缓存影响构建:

cd android
./gradlew clean
cd ..
rm -rf node_modules package-lock.json yarn.lock
# 重新安装依赖
npm install
# 重新运行项目
react-native run-android

内容的提问来源于stack exchange,提问作者DaraJ

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 02:57:02