react native 出现程序包com.facebook.react不存在

今天在通过android studio 编译react-native 项目的时候,莫名出现com.facebook.react下的文件不存在,部分缺失如图:
如:程序包com.facebook.react不存在、 程序包com.facebook.react.bridge不存在、程序包com.facebook.react.uimanager不存在
在这里插入图片描述
项目中react-native引入是通过:

 implementation 'com.facebook.react:react-native:+'

在这里插入图片描述
在这里插入图片描述
解决办法:
方法一
:react-native版本低于0.63,在 android\build.gradle 添加如下内容:

def REACT_NATIVE_VERSION = new File(['node', '--print',"JSON.parse(require('fs').readFileSync(require.resolve('react-native/package.json'), 'utf-8')).version"].execute(null, rootDir).text.trim())

allprojects {
    configurations.all {
        resolutionStrategy {
            // Remove this override in 0.65+, as a proper fix is included in react-native itself.
            force "com.facebook.react:react-native:" + REACT_NATIVE_VERSION
        }
    }

添加这段代码意思是获取到当前使用的 react-native 版本,然后把所有依赖项目的 rn 都覆盖成这个版本。

在我自己的项目,刚开始是用在每个build.gradle,引用到implementation ‘com.facebook.react:react-native:+’,都直接写死版本号:implementation ‘com.facebook.react:react-native:0.52.0’

方法二:react-native版本大于0.63,根据官网issue(Android build failures happening since Nov 4th 2022 · Issue #35210)里找到对应的热更新补丁,更新 package.json 内容,重新 yarn install,然后 cd android && ./gradlew clean 清理缓存,之后应该就恢复正常了

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 14
    评论
React NativeFacebook 开发的一种基于 React 框架的移动应用程序开发框架。它允许开发人员使用 JavaScript 和 React 的知识来构建原生移动应用程序。React Native 的核心思想是“一次编写,多处运行”,即使用相同的代码库可以在多个平台上运行,包括 iOS 和 Android 等。 理解 React Native 需要掌握以下几个方面: 1. React Native 应用程序的架构:React Native 应用程序的架构基于组件化和数据驱动的思想。开发人员可以使用组件来构建应用程序界面,这些组件可以通过状态管理库来管理和更新应用程序的数据。 2. React Native 应用程序的开发工具:React Native 提供了一系列开发工具,包括调试工具、模拟器、热重载等,可以帮助开发人员更快地构建和调试应用程序。 3. React Native 应用程序的原生组件:React Native 包含一些原生组件,如文本、图像、按钮等,这些组件可以帮助开发人员构建原生的应用程序界面。 4. React Native 应用程序的扩展性:React Native 允许开发人员编写原生模块和插件,这些模块和插件可以扩展应用程序的功能,如访问设备硬件、使用第三方库等。 总之,理解 React Native 需要掌握其应用程序的架构、开发工具、原生组件和扩展性等方面。通过不断地学习和实践,开发人员可以更好地利用 React Native 开发高质量的移动应用程序。
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值