当尝试使用npm i命令安装npm包时,我得到了以下异常:
我尝试重新安装Node.js包,并使用以下方法将代理设置为关闭:
set HTTP_PROXY=
set HTTPS_PROXY=
问题仍然存在。我哪里做错了?
更新:
执行以下命令时:
npm install --legacy-peer-deps
系统显示如下错误:
当尝试使用npm i命令安装npm包时,我得到了以下异常:
我尝试重新安装Node.js包,并使用以下方法将代理设置为关闭:
set HTTP_PROXY=
set HTTPS_PROXY=
问题仍然存在。我哪里做错了?
更新:
执行以下命令时:
npm install --legacy-peer-deps
系统显示如下错误:
当前回答
如果它可以帮助某人,我得到这个错误,在GitHub操作,同时推送我更新的包和包锁JSON文件,
问题在于我们内部的NPM包不一致。 我必须补充一点
legacy-peer-deps=true
在我们的
npmrc。
文件来覆盖依赖项。
所以我觉得有时候最好使用legacy-peer-deps来覆盖项目包中不需要的依赖项
其他回答
首先我尝试了
npm install
它给了我一个错误,无法解决依赖树,根据这个命令的帮助信息,
Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
我尝试了这个命令:
npm install --legacy-peer-deps
这解决了我的问题。
在使用npm 7时,这种情况经常出现,因为对等依赖问题在版本7中被视为错误,而在版本6中通常只是警告。通常使用——legacy-peer-deps可以让它在npm 7中工作。
当这不起作用时,一个选择是降级到npm 6。降级Node.js是没有必要的(但也没有害处)。相关的依赖管理代码在npm中。降级Node.js通常是巧合,因为这样做通常也会降级npm。
另一个比降级npm破坏性更小的选择是使用npx来使用之前版本的npm的install命令:npx -p npm@6 npm install
当所有这些都失败时,通常值得尝试删除node_modules目录和包锁。Json,然后再次运行NPM install。这会重新生成node_modules和package-lock.json。
只需做两个简单的步骤:
首先,在终端中执行这个命令。
npm config set legacy-peer-deps true
其次,清除缓存:
npm cache clean --force
最后,执行你的命令。这肯定有用。
某些包在更新到npm 7后会出现这种情况。
参数——legacy-peer-deps可以帮助:
npm i --legacy-peer-deps
此处描述legacy-peer-deps
导致npm在构建peerDependencies时完全忽略 包树,如NPM版本3到6。 如果一个包因为过于严格而无法安装 碰撞的peerDependencies,它提供了一种前进的方式 解决问题。 ...
你可以在默认情况下将这个选项设置为true (npm不推荐):
npm config set legacy-peer-deps true
或者只是等待,直到这些软件包更新。
我只是更新了我的Node.js,它为我工作:
node -v
输出:
V xxxx
And:
sudo npm install -g n
(使用此命令安装稳定节点release)
sudo n stable