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

React Native运行npm run-android构建失败 react-native-screens依赖报错

解决方案

核心报错原因是Gradle拉取谷歌Maven仓库依赖时,SSL证书校验不通过,可按以下步骤逐一尝试:

  • 方案1:替换国内Maven镜像(最优先推荐)

    修改项目android/build.gradle文件中的仓库配置,替换官方仓库为阿里云镜像:
    allprojects {
        repositories {
            // 新增阿里云镜像,放在最前面优先加载
            maven { url 'https://maven.aliyun.com/repository/google' }
            maven { url 'https://maven.aliyun.com/repository/jcenter' }
            maven { url 'https://maven.aliyun.com/repository/public' }
            // 原有官方仓库可以保留,作为 fallback
            google()
            mavenCentral()
        }
    }
    
    修改完成后清除构建缓存再重试:
    cd android && ./gradlew clean
    cd .. && npm run android
    
  • 方案2:导入站点证书到JDK信任库(适用公司内网自签证书场景)

    如果处于公司内网环境,网络代理会替换站点SSL证书,需要手动将证书导入JDK信任库:
    1. 浏览器访问https://dl.google.com,导出站点的根证书为PEM格式
    2. 执行命令导入到JDK的cacerts信任库(替换你的证书路径、你的JDK安装路径为实际路径):
    keytool -import -alias googlemaven -file 你的证书路径 -keystore 你的JDK安装路径/jre/lib/security/cacerts
    
    信任库默认密码为changeit,导入完成后重启终端重试构建。
  • 方案3:临时关闭Gradle SSL校验(仅临时调试用,不推荐长期使用)

    在项目android/gradle.properties文件中添加以下配置,跳过SSL证书校验:
    systemProp.javax.net.ssl.trustStore=NONE
    systemProp.javax.net.ssl.trustStoreType=JKS
    systemProp.javax.net.ssl.disableSNI=true
    
  • 方案4:清理全局Gradle代理配置

    检查用户目录下的.gradle/gradle.properties文件,确认是否有遗留的http/https代理配置,如果有则删除后重试。
  • 方案5:适配react-native-screens版本

    若以上方案都无效,可检查当前react-native-screens版本是否与项目Gradle版本匹配,尝试升级或降级包版本后重新安装依赖重试。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 01:09:03