如何解决npm运行命令时出现的resolution error依赖解析错误
错误含义
该报错属于npm对等依赖解析冲突:你项目中安装的@angular/cdk@12.2.2包的规则明确要求,项目必须安装版本符合^12.0.0 || ^13.0.0-0范围的对等依赖@angular/common,你当前项目的@angular/common版本不在这个范围内(要么低于12.0.0,要么高于13.x),npm无法完成依赖树的解析,所以抛出错误。
解决方案
- 第一步先确认当前项目的Angular核心版本,执行命令
npm list @angular/common查看已安装的@angular/common具体版本号。 - 版本对齐修复(最稳妥,避免后续运行时异常):
- 如果当前
@angular/common版本≥14.0.0:将@angular/cdk升级到和Angular大版本匹配的版本,比如Angular为14就执行npm install @angular/cdk@14,后续安装@angular/material也指定对应大版本,比如ng add @angular/material@14 - 如果当前
@angular/common版本<12.0.0:要么将Angular全家桶升级到12/13版本,要么将@angular/cdk降级到匹配你现有Angular版本的区间
- 如果当前
- 如果要强制跳过依赖校验,之前的
--legacy-peer-deps无效时可以按以下步骤操作:- 删除项目根目录下的
node_modules文件夹和package-lock.json文件 - 执行
npm cache clean --force清理npm缓存 - 重新执行你的安装命令,末尾加上
--legacy-peer-deps --force参数
- 删除项目根目录下的
内容的提问来源于stack exchange,提问作者M. Akar
相关产品推荐
相关产品推荐

