Windows上的全局npm安装位置?

时间:2015-11-20 05:40:40

标签: node.js windows npm pycharm

我不是百分百确定,但我相信我在家用和办公室PC上安装了Windows安装程序的v5节点。

在我的家用电脑上,全局安装发生在%APPDATA%:

(dev) go|c:\srv> which lessc
c:\users\bjorn\appdata\roaming\npm\lessc
c:\users\bjorn\appdata\roaming\npm\lessc.cmd

在我的办公室电脑上,他们会在程序文件下:

(dev) go|w:\srv> which lessc
c:\program files\nodejs\lessc
c:\program files\nodejs\lessc.cmd

我需要向PyCharm的文件监视器提供许多这些全局工具的完整路径,并且由于我共享它的项目文件,因此在用户文件夹下没有全局资源是有意义的。

为什么全局安装会在不同的文件夹中结束,如何强制它们到所有团队成员共有的位置?

5 个答案:

答案 0 :(得分:34)

根据:https://docs.npmjs.com/files/folders

  
      
  • 本地安装(默认):将东西放入当前包根目录的./node_modules中。
  •   
  • 全局安装(使用-g):将内容放入/ usr / local或安装节点的任何位置。
  •   
  • 如果您需要(),请在本地安装。
  •   
  • 如果您要在命令行上运行它,请全局安装它。 - >如果您需要两者,请在两个地方安装,或使用npm link。
  •   
     

前缀配置

     

前缀配置默认为安装节点的位置。上   大多数系统,这是/usr/local在Windows上,这是确切的   node.exe二进制文件的位置

文档可能有点过时,但它们解释了为什么全局安装最终会出现在不同的目录中:

(dev) go|c:\srv> npm config ls -l | grep prefix
; prefix = "C:\\Program Files\\nodejs" (overridden)
prefix = "C:\\Users\\bjorn\\AppData\\Roaming\\npm"

根据其他答案,似乎覆盖现在是Windows上的默认位置,并且我可能在实施此覆盖之前安装了我的办公室版本。

这也提出了一个解决方案,让所有团队成员将全局变量存储在相对于PC的相同绝对路径中,即(以管理员身份运行):

mkdir %PROGRAMDATA%\npm
setx PATH "%PROGRAMDATA%\npm;%PATH%" /M
npm config set prefix %PROGRAMDATA%\npm

打开一个新的cmd.exe窗口并重新安装所有全局包。

解释(by lineno。):

  1. 在合理的位置创建一个文件夹来保存全局变量(Microsoft是 坚持认为你不应该写入ProgramFiles,所以%PROGRAMDATA%似乎 喜欢下一个合乎逻辑的地方。
  2. 目录需要在路径上,因此请使用setx .. /M来设置 系统路径(在HKEY_LOCAL_MACHINE下)。这就是要求你运行的东西 这在具有管理员权限的shell中。
  3. 告诉npm使用此新路径。 (注意:文件夹在%PATH%in中不可见 这个shell,所以你必须打开一个新窗口。)。

答案 1 :(得分:26)

如果您全局安装软件包,这些是典型的npm路径:

Windows XP - %USERPROFILE%\Application Data\npm\node_modules
Newer Windows Versions - %AppData%\npm\node_modules

答案 2 :(得分:11)

只需按下Windows按钮并输入%APPDATA%并输入enter。

上面是您可以找到\ npm \ node_modules文件夹的位置。这是全局模块在您系统中的位置。

答案 3 :(得分:0)

截至今天,已安装全局软件包,例如。 npm i -g @vue/cli 默认存储在目录中:

C:\Users\<YourUserName>\AppData\Roaming\npm\node_modules

答案 4 :(得分:-2)

如果您只是想找出npm在哪里安装全局模块(此线程的标题),请在运行npm install -g sample_module时查看输出

  

$ npm install -g sample_module C:\ Users \ user \ AppData \ Roaming \ npm \ sample_module ->   C:\ Users \ user \ AppData \ Roaming \ npm \ node_modules \ sample_module \ bin \ sample_module.js   + sample_module@5.1.0更新了2.821s中的1个程序包