依赖共享的 NPM 依赖
NPM dependencies shared by dependencies
在 npm 3.3.12(节点 4.2.2)上,发生以下情况:
我 运行 npm install
在一个项目中,我的项目中的一个依赖项也是其他依赖项之一的依赖项。例如:
- 我的项目依赖于 PackageA 和 PackageB
- PackageA 也依赖于 PackageB
- 我的项目和PackageA都依赖于PackageB的相同版本
然后,我 运行 npm update
在我的项目中。 NPM 输出列表:
PackageB@x.x.x node_modules/PackageB -> node_modules/PackageA/node_modules/PackageB
然后突然PackageB不在我项目的node_modules中(仅在PackageA下的node_modules中)并且项目文件中的require("PackageB")失败。
是什么原因造成的,我怎样才能最好地避免这个问题?
这是一个错误,已在 NPM 3.4.1 中修复:
在 npm 3.3.12(节点 4.2.2)上,发生以下情况:
我 运行 npm install
在一个项目中,我的项目中的一个依赖项也是其他依赖项之一的依赖项。例如:
- 我的项目依赖于 PackageA 和 PackageB
- PackageA 也依赖于 PackageB
- 我的项目和PackageA都依赖于PackageB的相同版本
然后,我 运行 npm update
在我的项目中。 NPM 输出列表:
PackageB@x.x.x node_modules/PackageB -> node_modules/PackageA/node_modules/PackageB
然后突然PackageB不在我项目的node_modules中(仅在PackageA下的node_modules中)并且项目文件中的require("PackageB")失败。
是什么原因造成的,我怎样才能最好地避免这个问题?
这是一个错误,已在 NPM 3.4.1 中修复: