npm8中文文档
给定一个 package{dep}
结构:A{B,C}, B{C}, C{D}
,npm install 算法产生:
A
+-- B
+-- C
+-- D
也就是说,从 B 到 C 的依赖关系通过 A 已经导致 C 安装在更高级别的事实来满足。D 仍然安装在顶层,因为它没有任何冲突。
对于 A{B,C}, B{C,D@1}, C{D@2}
,此算法产生:
A
+-- B
+-- C
`-- D@2
+-- D@1
因为 B 的 D@1 会安装在顶层,所以 C 现在必须为自己私下安装 D@2。该算法是确定性的,但如果请求以不同顺序安装两个依赖项,则可能会生成不同的树。
有关 npm 创建的特定文件夹结构的更详细说明,请参阅 文件夹。