“npm install -g <package>”命令将软件包安装在哪里?

5
我使用npm install -g安装了一些包,想知道它们实际上被安装在哪里?
如果我使用npm install,它们会在当前目录下的node_modules中安装。
我理解如何从(何时使用)(如何使用)中使用-g标志。

你想知道全局依赖项安装的文件夹吗? - Patrick Hollweck
1个回答

8
当你执行npm install -g <package>时,意味着你想要在整个系统中全局安装该特定的npm模块。而当你没有使用-g选项时,该模块将会被安装在当前目录下名为node_modules的本地位置。 -g(global)指令告诉npm在全局共享的node_modules文件夹中安装包,通常情况下,该文件夹位于nodejs所在的位置(路径: C:\Program Files\nodejs)。这也允许你从全局层面上通过命令行访问模块。
你也可以检查全局包/库的安装位置: 运行以下命令。
npm list -g  or  npm root -g

在Windows中:

C:\Users\admin>npm list -g
C:\Users\admin\AppData\Roaming\npm\node_modules

在Mac中:你可以在这里找到node_modules

/usr/local/lib/node_modules

当你使用-g参数安装文件时,它会全局安装该文件,并且可以在任何想要的文件夹中访问,因此您不需要再次安装相同的软件包。

更多详细信息请参考。

您还可以检查本地软件包/库的安装位置:

运行npm listnpm root

当您仅安装时,特定软件包会被限制在该文件夹中。因此,每当您将软件包依赖项提升到全局级别时,需要在安装文件夹时加上-g。

  • 如果您要安装要在程序中使用(使用require('whatever'))的软件包,请在项目根目录下进行本地安装。
  • 如果您要安装要在shell、命令行或其他地方使用的软件包,请进行全局安装,以便其二进制文件出现在PATH环境变量中。请参考这里

希望对您有所帮助。谢谢。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接