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

React Native APK构建失败求助:执行gradlew assembleRelease报错

React Native 构建Release APK失败问题排查

问题概述

使用命令 gradlew assembleRelease 构建React Native应用的Release APK时失败,核心报错为无法找到React Native 0.71.0-rc.0的aar包。

项目依赖配置(package.json)

{
  "name": "appName",
  "version": "0.0.1",
  "private": true,
  "scripts": {
    "android": "react-native run-android",
    "ios": "react-native run-ios",
    "start": "react-native start",
    "test": "jest",
    "lint": "eslint . --ext .js,.jsx,.ts,.tsx"
  },
  "dependencies": {
    "@react-native-community/datetimepicker": "3.5.2",
    "@react-navigation/native": "5.9.2",
    "@react-navigation/stack": "5.14.2",
    "formik": "^2.2.9",
    "moment": "^2.29.4",
    "react": "17.0.2",
    "react-native": "0.68.2",
    "react-native-confirmation-code-field": "7.2.0",
    "react-native-countdown-component": "^2.7.1",
    "react-native-gesture-handler": "1.9.0",
    "react-native-mask-input": "1.2.1",
    "react-native-modal-selector-searchable": "^2.1.4",
    "react-native-safe-area-context": "3.1.9",
    "react-native-screens": "2.17.1",
    "react-native-svg": "12.1.0",
    "react-native-video": "^5.2.1",
    "yup": "^0.32.11"
  },
  "devDependencies": {
    "@babel/core": "^7.20.12",
    "@babel/runtime": "^7.20.13",
    "@react-native-community/eslint-config": "^3.2.0",
    "@types/react": "^18.0.27",
    "@types/react-native": "^0.71.2",
    "babel-jest": "^29.4.1",
    "eslint": "^8.33.0",
    "jest": "^29.4.1",
    "metro-react-native-babel-preset": "^0.75.0",
    "prettier": "^2.8.4",
    "react-native-svg-transformer": "^1.0.0",
    "react-test-renderer": "17.0.2",
    "typescript": "^4.9.5"
  },
  "jest": {
    "preset": "react-native"
  }
}

构建报错详情

> Task :react-native-screens:generateReleaseRFile FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':react-native-screens:generateReleaseRFile'.
> Could not resolve all files for configuration ':react-native-screens:releaseCompileClasspath'.
   > Failed to transform react-native-0.71.0-rc.0-release.aar (com.facebook.react:react-native:0.71.0-rc.0) to match attributes {artifactType=android-symbol-with-package-name, com.android.build.api.attributes.BuildTypeAttr=release, org.gradle.category=library, org.gradle.dependency.bundling=external, org.gradle.libraryelements=aar, org.gradle.status=release, org.gradle.usage=java-api}.
      > Could not find react-native-0.71.0-rc.0-release.aar (com.facebook.react:react-native:0.71.0-rc.0).
        Searched in the following locations:
            https://repo.maven.apache.org/maven2/com/facebook/react/react-native/0.71.0-rc.0/react-native-0.71.0-rc.0-release.aar

问题原因

项目实际依赖的React Native版本为 0.68.2,但react-native-screens@2.17.1在依赖解析过程中错误尝试拉取React Native 0.71.0-rc.0的预发布版本aar包,而该版本并未发布到Maven中央仓库,导致构建时依赖解析失败。

解决方案

方案1:升级react-native-screens到兼容版本

react-native-screens@2.17.1与RN 0.68.2存在依赖冲突,建议升级到适配RN 0.68.x的稳定版本,比如3.10.0:

npm install react-native-screens@3.10.0 --save

方案2:强制指定React Native版本(无需升级依赖)

在Android项目根目录下的android/build.gradle文件中,添加版本强制解析规则,避免依赖拉取错误版本:

allprojects {
    repositories {
        // 保留原有仓库配置
    }
    // 新增以下配置
    configurations.all {
        resolutionStrategy.force 'com.facebook.react:react-native:0.68.2'
    }
}

方案3:清理构建缓存后重试

完成上述任一方案后,清理Android构建缓存并重新构建:

cd android
./gradlew clean
./gradlew assembleRelease

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 12:15:48