安装@nestjs/cli遇npm EBADENGINE警告,求解决方法
解决npm EBADENGINE警告的方法
这个警告是因为你当前使用的Node.js版本(v16.13.1)不满足lru-cache@9.1.1要求的版本(14 || >=16.14),可以用以下几种方法清除警告:
方法一:升级/降级Node.js版本(推荐)
- 直接把Node.js升级到16.14.0及以上版本,或者降级到14.x系列,完全符合包的版本要求后,警告会自动消失。
- 用Node版本管理器(nvm)操作更方便,命令示例:
# 安装16.14.0版本 nvm install 16.14.0 # 切换到该版本 nvm use 16.14.0
方法二:临时跳过引擎检查
- 如果暂时不想调整Node版本,可以在安装时添加参数忽略引擎校验:
npm i @nestjs/cli --save --engine-strict false - 也可以在项目根目录的
.npmrc文件中添加配置,永久忽略当前项目的引擎检查:engine-strict=false
方法三:锁定兼容的lru-cache版本
- 可以强制让项目使用支持Node 16.13.1的lru-cache版本(比如8.x系列),在
package.json中添加:"resolutions": { "lru-cache": "^8.0.0" } - 之后重新执行安装命令:
注:npm原生不直接支持resolutions,需要配合npm inpm-force-resolutions包使用;如果用yarn则无需额外配置,直接生效。
内容的提问来源于stack exchange,提问作者Chris Hunter-Johnson
相关产品推荐
相关产品推荐

