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

降级Gradle适配Vision Camera后,React Native Android构建报“Plugin not found”错误

降级Gradle适配Vision Camera后,React Native Android构建报“Plugin not found”错误

嗨,我最近在给React Native项目加条码扫描功能的时候,简直踩了个遍的坑,好不容易把版本不兼容、新架构、Gradle版本这些问题搞定,结果卡在了最后一个配置错误上——就是这个com.facebook.react.settings插件找不到的问题,折腾了好久终于解决了,下面把我的经历和解决方法分享给大家。

我的踩坑历程(帮你快速定位是否和你情况一致)

先给大家梳理下我是怎么走到这一步的,方便你对照:

  • 一开始选了vision-camera-code-scanner,结果发现仓库归档只读了,直接pass
  • 换成vision-camera-v3-barcode-scanner,结果一堆版本不兼容,于是把项目统一调整到这些版本:
    • React Native 0.73.6
    • react-native-vision-camera ~3.9.2
    • react-native-worklets-core ~0.4.0
    • react-native-reanimated ~3.6.2
    • 还在android/gradle.properties开了VisionCamera_enableCodeScanner=true
  • 接着碰到新架构的C++编译错误,把newArchEnabled=false加上就好了
  • 然后又遇到Gradle的Unresolved reference: serviceOf错误,查了是Gradle版本太高,于是把Gradle从8.14.1降级到8.3,结果就出现了现在的插件找不到的问题

问题本质

这个错误的核心很简单:降级到Gradle 8.3后,Gradle对插件的引用规则更严格了——所有从插件仓库拉取的插件必须明确指定版本号,而原来的settings.gradle里com.facebook.react.settings没有加版本,所以Gradle找不到它。

一步一步解决

针对React Native 0.73.6 + Gradle 8.3的组合,按下面的步骤改就对了:

1. 给settings.gradle里的插件加上版本号

打开android/settings.gradle,找到开头的pluginManagement块,原来的代码大概是这样的:

pluginManagement {
  plugins {
    id 'com.facebook.react.settings'
    id 'com.facebook.react.rootproject'
    // 其他插件...
  }
}

你需要给这两个React Native的插件加上版本号,版本号必须和你的React Native版本一致(也就是0.73.6),修改后变成:

pluginManagement {
  plugins {
    id 'com.facebook.react.settings' version '0.73.6'
    id 'com.facebook.react.rootproject' version '0.73.6'
    // 如果这里还有其他插件(比如kotlin的插件)没加版本,也一并补上对应的版本号
  }
}

2. 检查build.gradle的classpath依赖

打开android/build.gradle,确保dependencies里的react-native-gradle-plugin版本和RN版本一致,同时Gradle插件版本要和你用的Gradle wrapper版本匹配:

buildscript {
  ext {
    // 你的其他配置...
  }
  repositories {
    google()
    mavenCentral()
  }
  dependencies {
    classpath("com.android.tools.build:gradle:8.3.0") // 必须和gradle-wrapper里的8.3对应
    classpath("com.facebook.react:react-native-gradle-plugin:0.73.6") // 和RN版本一致
    classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:2.1.20") // 你的kotlin版本,保持原来的就行
  }
}

3. 清理缓存重新构建

改完之后,先清理下缓存避免旧配置干扰:

cd android
./gradlew clean

然后重新同步Gradle,在Android Studio里点Sync按钮,或者直接运行构建命令:

./gradlew assembleDebug

额外要检查的点

  • 确认android/gradle/wrapper/gradle-wrapper.properties里的distributionUrl确实是Gradle 8.3:
    distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-all.zip
    
  • 再核对下android/gradle.properties里的配置:
    VisionCamera_enableCodeScanner=true
    newArchEnabled=false
    

这样应该就能解决这个插件找不到的错误了,我就是这么搞定的,希望能帮到你!

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.07 10:59:38