5.2 Yarn Plug'n'Play (PnP) 机制 5.2 Yarn Plug'n'Play (PnP) 机制 在软件工程的历史长河中,依赖管理始终是一个充满权衡的命题。当我们回顾前文关于包管理器演进历程的探讨,不难发现从 早期简单的嵌套结构到扁平化 的转变,本质上是在磁盘空间与依赖地狱之间寻找的一种妥协。然而,这种妥协并非终点,它带来了新的复杂性:幽灵依赖、双重依赖风险以及极其低效的 I/O 遍历性能。 正是在这种背景下,Yarn 团队以一种近乎革命者的姿态,推出了 Plug'n'Play(PnP)机制。这不仅仅是一次技术迭代,更是一次对 Node.js 生态底层依赖解析逻辑的根本性重构。PnP 试图回答一个核心问题:我们是否真的需要 目录来维系模块间的依赖关系? 答案是否定的。