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

React Native 0.80.0 Android构建失败:所有原生库均提示‘package does not exist’错误

React Native 0.80.0 Android构建失败:所有原生库均提示‘package does not exist’错误

我完全懂这种挫败感——当清理缓存、重装依赖、重建Android文件夹这些标准操作都不管用的时候,真的像撞了南墙一样。咱们针对你的RN 0.80+Windows+PowerShell环境,来试试一些更针对性的修复方案。

首先,修复致命的React版本不匹配问题

看你的package.json,你把React 19.1.0和RN 0.80.0搭配使用了,这是个核心问题——RN 0.80.0明确要求React 18.2.0(官方发布说明里写得很清楚)。用RN不兼容的高版本React会直接打乱自动链接这类核心工具链的工作,进而导致那些“package不存在”的报错。

先把这个问题解决:

  1. 卸载不兼容的React版本:
    npm uninstall react
    
  2. 安装RN 0.80.0要求的精准React版本:
    npm install react@18.2.0
    
  3. 重新安装所有依赖,确保 peer 依赖被正确解析:
    rm -Recurse node_modules package-lock.json
    npm install
    

Windows专属的PowerShell和Gradle修复

Windows的一些特性会在看似配置正确的情况下搞崩Gradle构建:

  • 以管理员身份运行PowerShell:文件权限问题有时会阻止Gradle访问链接的原生模块。右键点击PowerShell,选择“以管理员身份运行”后再执行构建命令。
  • 启用长路径支持:Windows默认的路径长度限制会导致Gradle在解析深层模块路径时失败。
    • 打开注册表编辑器(regedit),导航到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem,把LongPathsEnabled的值设为1。
    • 或者用组策略编辑器(gpedit.msc)→ 计算机配置 → 管理模板 → 系统 → 文件系统 → 启用NTFS长路径。
  • 禁用Gradle守护进程:守护进程的缓存可能会保留错误状态,试试用这个命令构建:
    cd android
    .\gradlew assembleRelease --no-daemon
    

验证Gradle和JDK版本

  • 必须用JDK 17:RN 0.80.0要求JDK 17(RN 0.70+就不再支持旧版JDK了)。检查你的JDK版本:
    java -version
    
    如果不是17,安装JDK 17(Amazon Corretto或OpenJDK都可以),然后在PowerShell里设置JAVA_HOME:
    $env:JAVA_HOME = "C:\Program Files\Amazon Corretto\jdk17.x.x_xx"
    
  • Kotlin版本检查:确保你的android/build.gradle使用1.8.0或更高版本的Kotlin(RN 0.80默认用这个版本):
    buildscript {
        ext {
            kotlin_version = '1.8.0'
            // ...其他版本配置
        }
    }
    

手动验证自动链接的包(如果需要)

虽然RN 0.80支持自动链接,但有时自动生成的配置会漏掉条目。检查你的android/settings.gradle,确保每个报错的包都被正确列出:
比如:

include ':react-native-picker-picker'
project(':react-native-picker-picker').projectDir = new File(rootProject.projectDir, '../node_modules/@react-native-picker/picker/android')

include ':react-native-fs'
project(':react-native-fs').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-fs/android')

include ':react-native-quick-sqlite'
project(':react-native-quick-sqlite').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-quick-sqlite/android')

include ':react-native-vector-icons'
project(':react-native-vector-icons').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-vector-icons/android')

如果有缺失的条目,手动加上,然后执行.\gradlew clean再重新构建。

用最小化项目测试

如果以上方法都不管用,创建一个全新的RN 0.80.0项目,逐个添加你的依赖:

npx react-native init TestProject --version 0.80.0
cd TestProject
npm install @react-native-picker/picker react-native-fs react-native-quick-sqlite react-native-vector-icons
npx react-native run-android

如果这个项目能成功构建,那问题大概率出在你原项目的自定义配置上(比如AndroidManifest.xml修改、build.gradle调整或签名配置)。把新项目的配置和你原项目的对比,找出差异点。

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.08 10:39:53