React Native新建项目运行报错找不到com.facebook.fresco:stetho:2.2.0
问题现象
运行新建的React Native 0.68.2项目执行构建时报错,无法完成:app:mergeDebugAssets任务,核心错误为无法解析com.facebook.fresco:stetho:2.2.0依赖,依赖引用链为project :app > com.facebook.flipper:flipper-fresco-plugin:0.75.1,所有配置的Maven仓库均未找到该版本依赖包。
执行npx react-native info获取的环境信息如下:
info Fetching system and libraries information... System: OS: Windows 10 10.0.22000 CPU: (16) x64 Intel(R) Core(TM) i7-10870H CPU @ 2.20GHz Memory: 3.47 GB / 15.78 GB Binaries: Node: 16.13.0 - C:\Program Files\nodejs\node.EXE Yarn: Not Found npm: 8.1.0 - C:\Program Files\nodejs\npm.CMD Watchman: Not Found SDKs: Android SDK: Not Found Windows SDK: Not Found IDEs: Android Studio: Not Found Visual Studio: Not Found Languages: Java: 18.0.1.1 - C:\Program Files\Common Files\Oracle\Java\javapath\javac.EXE npmPackages: @react-native-community/cli: Not Found react: 17.0.2 => 17.0.2 react-native: 0.68.2 => 0.68.2 react-native-windows: Not Found npmGlobalPackages: *react-native*: Not Found
错误原因
- 默认配置的Flipper版本0.75.1与React Native 0.68.2版本不兼容,其依赖的
com.facebook.fresco:stetho:2.2.0未发布到当前配置的公共Maven仓库 - 本地开发环境存在配置缺失:未安装/未配置Android SDK、Java版本过高(React Native 0.68.x最高兼容JDK 11,当前使用JDK 18会导致后续构建报错)
解决步骤
- 第一步:修复依赖版本不兼容问题
打开项目路径下的android/gradle.properties文件,找到FLIPPER_VERSION配置项,将值修改为React Native 0.68.2适配的0.125.0,修改后配置如下:
FLIPPER_VERSION=0.125.0
如果不需要使用Flipper调试工具,可以直接打开android/app/build.gradle文件,注释掉debugImplementation相关的flipper依赖,彻底移除该依赖链。
第二步:补全Maven仓库配置
打开项目路径下的android/build.gradle文件,找到allprojects.repositories配置块,在现有仓库列表的最前面添加可正常访问的Maven中央仓库镜像配置,确保所有安卓依赖可以正常拉取。第三步:修复本地开发环境配置
- 安装JDK 11版本,配置系统环境变量
JAVA_HOME指向JDK 11的安装路径,替换当前的JDK 18版本 - 安装Android SDK,配置系统环境变量
ANDROID_HOME指向SDK安装路径,将SDK下的platform-tools、emulator、tools目录添加到系统Path变量中
- 安装JDK 11版本,配置系统环境变量
第四步:清理缓存重新构建
在项目根目录依次执行以下命令,清理旧的构建缓存后重新编译:
cd android gradlew clean cd .. npx react-native run-android
注意:如果执行构建时仍然提示依赖拉取失败,可以删除项目根目录下的
node_modules文件夹和package-lock.json文件,重新执行npm install后再尝试构建。
内容的提问来源于stack exchange,提问作者Jey Prakash
相关产品推荐
相关产品推荐

