react-native run-android报错:评估:react-native-mmkv项目时出现异常
解决react-native-mmkv构建时多AAR文件报错问题
问题原因
react-native-mmkv旧版本的构建脚本里,用singleFile强制要求react-native/android目录下仅存在一个aar文件,但你的RN版本(0.81.0)目录结构中存在多个符合匹配规则的aar文件,触发了该异常。
解决方案
方案1:升级react-native-mmkv到兼容版本
执行命令更新依赖:
npm install react-native-mmkv@latest --save # 用yarn的话执行: yarn add react-native-mmkv@latest
更新完成后重新构建:
npx react-native run-android
方案2:手动修改react-native-mmkv构建脚本
若暂时无法升级,直接修改{path}\node_modules\react-native-mmkv\android\build.gradle中的报错代码段:
将原代码:
if (!sourceBuild) { def rnAAR = fileTree("${defaultDir.toString()}").matching({ it.include "**/**/*.aar" }).singleFile extractJNI(files(rnAAR)) }
替换为:
if (!sourceBuild) { def rnAARs = fileTree("${defaultDir.toString()}").matching({ it.include "**/**/*.aar" }) // 取第一个匹配的aar文件执行后续逻辑 def rnAAR = rnAARs.first() extractJNI(files(rnAAR)) }
修改后重新执行构建命令。
方案3:清理依赖缓存
清理RN与gradle的冗余缓存,避免残留文件干扰:
# 清理npm缓存 npm cache clean --force # 删除本地依赖与锁文件 rm -rf node_modules package-lock.json # 重新安装依赖 npm install # 清理Android构建缓存 cd android && ./gradlew clean && cd .. # 重新构建应用 npx react-native run-android
额外提示
从主PC迁移项目后,检查是否存在本地缓存依赖未同步、或.gitignore规则遗漏导致的多余文件引入问题。
内容的提问来源于stack exchange,提问作者wolf_of_java_script
相关产品推荐
相关产品推荐

