合并最新PR后cldr-data模块解析失败,rm命令无法识别求助
打包失败:无法解析cldr-data模块问题解决
打包报错:Error: Unable to resolve module
错误:无法从src\services\g11n\models\cldr-utilities.js解析模块cldr-data/supplemental/currencyData:项目中未找到该模块。
合并最新PR后,尽管package.json中存在cldr-data的配置,但该依赖被注释(见下方代码片段),且执行缓存清理步骤时,因使用Linux/macOS的rm命令,在Windows环境下报错提示“'rm'不是内部或外部命令”。
用户package.json依赖片段:
"dependencies": { "@babel/helper-string-parser": "^7.18.10", "@react-native-community/async-storage": "1.9.0", "@react-native-community/blur": "3.6.0", "@react-native-community/checkbox": "0.5.6", "@react-native-community/eslint-config": "0.0.5", "@react-native-community/geolocation": "2.0.2", "@react-native-community/masked-view": "0.1.10", "@react-native-community/push-notification-ios": "^1.10.1", "@react-native-community/slider": "3.0.3", "@react-native-community/toolbar-android": "0.1.0-rc.2", "@react-native-firebase/app": "12.1.0", "@react-native-firebase/messaging": "12.1.0", "@react-native-picker/picker": "1.9.6", "@wwdrew/react-native-numeric-textinput": "1.1.0", "buffer": "5.4.3", # "cldr-data": "36.0.0", "deep-freeze": "0.0.1", // 其他依赖省略 }
解决步骤
1. 修复cldr-data依赖配置
取消package.json中cldr-data的注释:
"cldr-data": "36.0.0",
保存后执行安装命令:
yarn add cldr-data@36.0.0
2. Windows环境适配的缓存清理命令
替换Linux/macOS的rm命令为Windows对应命令:
- 清除watchman监控(需已安装watchman):
watchman watch-del-all - 删除node_modules目录:
rd /s /q node_modules - 重新安装依赖:
yarn install - 重置Metro缓存:
yarn start --reset-cache - 清除Metro临时缓存:
del /s /q %LOCALAPPDATA%\Temp\metro-*
3. 额外排查点
- 检查
cldr-utilities.js的引入路径,确认是否遗漏.json后缀:import currencyData from 'cldr-data/supplemental/currencyData.json'; - 查看metro.config.js,确保未配置排除
cldr-data的解析规则。
内容的提问来源于stack exchange,提问作者Syed Musab Ahmed
相关产品推荐
相关产品推荐

