【npm ERR! code ERESOLVE npm ERR! ERESOLVE unable to resolve dependency tree】

发布于:2025-03-22 ⋅ 阅读:(158) ⋅ 点赞:(0)

npm ERR! code ERESOLVE npm ERR! ERESOLVE unable to resolve dependency tree

在这里插入图片描述

npm ERR! code ERESOLVE npm ERR! ERESOLVE unable to resolve dependency tree
当我们拿到一个前端项目的时候,想要把它运行起来,首先是要给它安装依赖,即cd到当前项目根目录,然后有一定几率遇到这样的报错:
npm ERR! code ERESOLVE npm ERR! ERESOLVE unable to resolve dependency tree

翻译一下就是:不能解析依赖树,需要先修复上面的依赖关系冲突或者重新执行一下npm install 命令,后面跟--force或者--legacy-peer-deps去接受不正确的(并可能被破坏的)依赖解析。
根据他的建议,我们去执行了命令之后,在你发现依赖安装好了之后,并不是所有项目都会乖乖听话,有些“顽固”项目依旧会报上面的错误,这时,就应该去看一下npm 版本了,npm@7与ERESOLVE有关的问题比较常见,这是因为npm7.x于某些事情要比npm6.x更加严格,通常解决办法就是使用--force--legacy-peer-deps可解决这种情况。

  • --force 会无视冲突,并强制获取远端npm库资源,当有资源冲突时覆盖掉原先的版本。

  • --legacy-peer-deps标志是在v7中引入的,目的是绕过peerDependency自动安装;它告诉 NPM 忽略项目中引入的各个modules之间的相同modules但不同版本的问题并继续安装,保 证各个引入的依赖之间对自身所使用的不同版本modules共存。

建议用--legacy-peer-deps 比较保险一点:

npm install --legacy-peer-deps

或者使用npm@6

如果这些办法都不能起到作用的话,可以把项目中的node_modules和package-lock.json删除,它们会被重新创建。

注意:使用npm@6不需要卸载npm@7,可以使用npx去指定npm版本。
如下:npx -p npm@6 npm install --legacy-peer-deps


参考连接:
https://juejin.cn/post/7439392864855392266
https://blog.csdn.net/qq_63743780/article/details/140237618