npm install changes 从 URL 解析为 false
Posted
技术标签:
【中文标题】npm install changes 从 URL 解析为 false【英文标题】:npm install changes resolved from a URL to false 【发布时间】:2020-09-12 15:28:01 【问题描述】:问题
当我提取团队的代码并运行 npm install
时,package-lock.json
中的许多项目的 resolved
属性从 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 -v #=> 6.14.5
node -v #=> v12.13.0
【问题讨论】:
这是一个错误,似乎与使用 npm 链接有关。但它也几乎无关紧要,因为从 npm 5 开始,已解决的字段基本上被忽略了。只是稍微弄乱你的提交历史。 谢谢@bryan60。我不知道我们在任何地方使用npm link
。这是自动完成的还是由我正在安装的软件包完成的?
这是 npm 本身的问题,计划在 7 中解决。但就目前而言,它只是烦人而不是有害。人们说您可以通过删除节点模块并重新安装来修复它
有趣!我已经确认rm -rf node_modules && npm i
不会重现该错误。使用 npm 的每个人都会发生这种情况吗,因为我在工作中没有听到太多关于它的信息(也许人们习惯于忽略它)并且在发布这个问题之前在我的搜索中没有找到太多。跨度>
嗯,它主要与使用 npm 链接有关,它较新且不太常用,但显然并非在所有情况下都如此。大多数受影响的人可能甚至都没有注意到它。只要 package.json 本身是正确的,我通常只接受任何包锁定更改而不审查它们,因为它是一个生成的文件。 idc 只要能正常工作,npm 到底在做什么
【参考方案1】:
解决方案
正如@bryan60 所指出的,这是 NPM 中的一个错误,特别是 npm link
。除了等待更新,我们目前无能为力。
解决方法
如果您遇到问题并有几分钟时间rm -rf node_modules/ && npm install
将重新安装您的所有节点模块,您将不会遇到package-lock.json
问题。
【讨论】:
以上是关于npm install changes 从 URL 解析为 false的主要内容,如果未能解决你的问题,请参考以下文章
安装npm install时,长时间停留在fetchMetadata: sill 解决方法——换npm的源
安装npm install时,长时间停留在fetchMetadata的解决方法