首页 > 解决方案 > 即使在 npm clean cache --force、unlink、rm -rf node_modules 等之后,npm 链接也会继续拉旧版本

问题描述

我有一个包 foo,我想对它进行符号链接并在包 bar 中使用本地版本的 foo。

正常流程应该是(我认为)

  1. 在 foo 中运行 sudo npm 链接

  2. 在酒吧运行 sudo npm link foo

完毕

但是,Bar 一直在提取旧版本的 foo,而不是我本地计算机上的版本。这个旧版本似乎在任何地方都不存在,也不是实时版本

我努力了

npm clean cache --force

在富:

npm unlink
rm -rf node modules, rm -rf build, rm -rf dist, rm -rf package-lock.json 
npm build
npm link

在酒吧:

npm link foo
rm -rf node modules, rm -rf build, rm -rf dist, rm -rf package-lock.json 
npm build

Bar 仍然以旧版本的 foo 结束,它既不是当前的本地版本也不是实时版本。这个旧版本可能存在于哪里,为什么它会不断出现?

标签: node.jsnpm

解决方案


如果您不清除package-lock.json文件,则 npm 将尝试安装package-lock.json. 请参阅:https ://docs.npmjs.com/cli/v6/configuring-npm/package-lock-json

package-lock.json在清理和重新安装软件包之前尝试删除。


推荐阅读