执行expo start --dev-client时出现Cannot find module 'metro-cache'错误
解决 "Cannot find module 'metro-cache'" 错误
可能的原因
该错误通常源于全局Expo CLI依赖损坏、本地项目依赖冲突,或是metro-cache作为间接依赖未被正确安装。
解决步骤
1. 重新安装全局Expo CLI
错误提示指向全局Expo模块目录,说明全局CLI的依赖存在问题:
# 卸载全局Expo CLI npm uninstall -g expo-cli # 重新安装 npm install -g expo-cli
若使用Yarn:
yarn global remove expo-cli yarn global add expo-cli
2. 清理并重装本地项目依赖
本地node_modules可能存在损坏或依赖不兼容:
# 删除依赖目录和锁文件 rm -rf node_modules package-lock.json yarn.lock # 重新安装依赖 npm install
使用Yarn则执行:
yarn install
3. 移除冲突的@react-native/metro-config
Expo项目自带@expo/metro-config,单独安装的@react-native/metro-config可能引发版本冲突,尝试移除:
npm uninstall @react-native/metro-config
或:
yarn remove @react-native/metro-config
完成后重新启动项目。
4. 手动安装metro-cache
若上述步骤无效,直接安装缺失的模块:
npm install metro-cache --save-dev
或:
yarn add metro-cache --dev
内容的提问来源于stack exchange,提问作者Draško
相关产品推荐
相关产品推荐

