【发布时间】:2021-07-07 08:39:58
【问题描述】:
我正在努力使用 npm 链接。事实上,我有两个本地包我想在我的项目中使用。
在每个包上我都执行了sudo npm link command。因此,当我执行npm -g list 时,我可以看到这些包及其参考。
当我在我的项目中创建npm link <my-package-1> 时,这会在 node_modules 中添加我的第一个包的符号链接。到目前为止,一切顺利。
仅当我在我的项目中创建 npm link <my-package-2> 时。 npm 首先从我在 node_modules 中的第一个包中删除符号链接,然后他创建了指向 node_modules 中第二个包的符号链接。我不知道为什么,但我的项目中不能有多个带有链接的包。
另外,当我对 node_modules 文件夹执行 ls 时,我看到符号链接指向我的包文件夹,而不是指向我的全局 npm 的 node_modules 文件夹。
我错过了什么吗?我认为这正是使 npm 链接与 npm i ../path/to/my/package 不同的原因。
谢谢你,美好的一天
【问题讨论】:
-
我将 Ubuntu 从 9.10 升级到 20.04,Nodejs 从 10.22.0 升级到 16.9.1,NPM 从 6.14.6 升级到 7.21.1。我有 8 个模块,多年来我一直在链接它们,并且每天都在处理它们。迁移到最新的 Ubuntu 和 nodej 软件堆栈后,不再能够链接。我已经尝试了其他帖子link 中的所有建议,但没有成功。 NPM -g list 显示包在 /usr/lib 中全局链接,但到 package_name 的多个链接只会创建指向 ocmmands 列表中最后一个包的 sym_link。