我一直在安装一些node包,注意到NPM会创建很多重复的包。
例如,我首先安装了mongoose,它自然而然地安装了许多依赖项。然后我安装了mongodb包,它也带有bson作为依赖项。由于存在重叠的依赖关系,我出现了以下异常:
mongodb存在于以下目录中:
/usr/local/lib/node_modules/mongodb/
/usr/local/lib/node_modules/mongoose/node_modules/mongodb/
此外,MongoDB 的依赖项 bson 在这两者中都存在:
/usr/local/lib/node_modules/mongodb/
/usr/local/lib/node_modules/mongoose/node_modules/mongodb/
我知道这些只是几千字节的文件,但我觉得这可能会导致很多冗余,最终可能会得到一个非常复杂的树形结构,类似于以下内容:
/usr/local/lib/node_modules/[something1]/node_modules/[something2]/node_modules/[something3/.../.../node_modules/[somethingX]/
在这种情况下,给定的[依赖项]可能存在于/usr/local/lib/node_modules的X级目录下。
我的主要担忧与更新这些模块有关。我不难想象同时安装不同版本的并发模块。
将所有内容直接放在/usr/local/lib/node_modules/中,然后交叉引用依赖关系是否更容易?