Node.js npm安装更改已从URL解析为false 问题
当我提取团队代码并运行Node.js npm安装更改已从URL解析为false 问题,node.js,npm,npm-install,package.json,package-lock.json,Node.js,Npm,Npm Install,Package.json,Package Lock.json,当我提取团队代码并运行npm install时,package lock.json中的许多项已解决问题属性从URL更改为false。例如 "debug": { "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", … }, // changes to "debug": { "version": "3.2.6", "resolved": false,
npm install
时,package lock.json
中的许多项已解决问题
属性从URL更改为false
。例如
"debug": {
"version": "3.2.6",
"resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
…
},
// changes to
"debug": {
"version": "3.2.6",
"resolved": false,
…
},
提问
我希望这不会发生。我不明白为什么会发生这种情况,或者是什么原因导致了这种情况。这似乎是一个非常奇怪和严重的错误。如果我签入并部署它,会发生什么?解决方案
正如@bryan60所指出的,这是NPM中的一个bug,特别是NPM链接
。在这一点上,除了等待更新,我们无能为力
变通
如果您遇到问题,并且有几分钟的时间
rm-rf node_modules/&&npm install
将重新安装您的所有节点模块,并且不会出现包锁定.json问题。这是一个bug,似乎与使用npm链接有关。但它也大多无关紧要,因为自NPM5以来,解析场基本上被忽略了。只是稍微弄乱了你的提交历史。谢谢@bryan60。我不知道我们在任何地方使用npm链接。这是自动完成的还是由我正在安装的软件包完成的?这是npm本身的问题,计划在7年内解决。但就目前而言,这只会让人恼火,而不是有害。人们说你可以通过删除节点模块并重新安装来修复它!我已经确认,rm-rf node_模块和&npm I
不会再现错误。这是否会发生在所有使用npm的人身上,因为我在工作中没有听到太多关于npm的信息(可能人们习惯于忽略它),并且在发布这个问题之前在我的搜索中也没有找到太多。嗯,它主要与使用npm链接有关,npm链接更新且不太常用,但显然不是在所有情况下都是如此。可能大多数受影响的人甚至没有注意到。只要package.json本身是正确的,因为它是一个生成的文件,所以我通常只接受任何包锁更改,而不检查它们。idc npm在引擎盖下做什么,只要它能工作