使用react-native-vision-camera遇Android构建错误:目录文件数量不符
React Native Vision Camera Android构建错误解决方案
错误详情
- 错误位置:
D:\Confeez-Workspace\Demo\node_modules\react-native-vision-camera\android\build.gradle第231行 - 错误提示:评估项目
:react-native-vision-camera时出错,预期目录D:\Confeez-Workspace\Demo\node_modules/react-native/android仅包含一个文件,实际包含多个文件。
解决步骤
1. 清理依赖与构建缓存
彻底清理现有依赖和构建缓存后重新安装:
# 删除依赖包和锁文件 rm -rf node_modules rm package-lock.json yarn.lock # 重新安装依赖 npm install # 或 yarn install # 清理Android构建缓存 cd android ./gradlew clean cd ..
2. 确认版本兼容性
检查react-native-vision-camera与你的React Native版本是否匹配:
- Vision Camera v3.x 要求 React Native 0.70+
- Vision Camera v2.x 要求 React Native 0.68+
版本不匹配会导致路径解析逻辑出错,建议调整到兼容版本。
3. 修复build.gradle中的路径逻辑
打开node_modules/react-native-vision-camera/android/build.gradle,定位到第231行的文件获取逻辑,将原本的singleFile调用改为指定具体文件名,例如:
// 替换原有的singleFile逻辑 def reactNativeGradlePlugin = file("${rootProject.projectDir}/../node_modules/react-native/android/react-native-gradle-plugin.jar")
修改后执行构建,若有效,用patch-package固化修改避免后续依赖覆盖:
npx patch-package react-native-vision-camera
4. 清理react-native/android目录冗余文件
直接打开D:\Confeez-Workspace\Demo\node_modules/react-native/android目录,删除多余的文件/文件夹,只保留react-native-gradle-plugin.jar(对应版本的gradle插件文件)。
内容的提问来源于stack exchange,提问作者Shahid Gori
相关产品推荐
相关产品推荐

