如何全局安装节点包 - 正确的方法?

如何全局安装节点包 - 正确的方法?

我试图避免为每个用户冗余地安装通用节点包。我想在全球范围内安装某些常见的 Node 包。然而,在 Arch Linux 上,我遇到了权限问题。

npm install [package] -g

失败并显示消息:

缺少对 /usr/lib/node_modules 的写访问权限

这成功了:

sudo npm install [package] -g

但是,当普通用户尝试使用该包时,我们会收到如下错误:

错误:EACCES:权限被拒绝,打开“/usr/lib/node_modules/[package]/lib/[file].js”

假设我们需要全局安装一些软件包,那么正确的方法是什么?编辑:查看要求的原因这里

答案1

一般来说所有软件包都应在本地安装。这确保您可以在同一包的不同版本(如需要)上运行多个应用程序。全局包更新可能会导致依赖关系和兼容性的破坏。

做一个全局安装时包提供了您想要从 shell 运行的可执行命令。

如果您想在开发中使用已全局安装的软件包:请使用npm link <global-package>.这将创建该包的本地链接(仅适用于 npm >= 1.0 且支持符号链接的操作系统)。

欲了解更多信息,请阅读:

  1. npm-1-0-全局与本地安装
  2. npm-1-0-链接

相关内容