Win10 修改 NPM/CNPM 全局模式的默认安装路径的方法

症状说明

在安装 Node.JS 环境,会自动把 NPM 全局模块的路径设置在系统盘安装根目录内(默认是 C:\Program Files\nodejs\node_modules),当使用 npm install -g xxx 安装 NPM 全局包时,会提示没有权限创建文件夹:

Error: EPERM: operation not permitted, mkdir 'C:\Program Files\nodejs\node_modules\xxx'

可以使用管理员身份启动 CMD 来解决权限问题;但在项目开发阶段不建议全局路径设置在系统盘,不但会影响电脑的性能,而且还很不安全。

可以通过以下步骤来重新设置默认下载的全局路径目录:

输入命令,查看当前 NPM 配置:

npm config ls

第一步

在系统盘以外盘符的任意目录下新建两个文件夹,分别是:

  • D:\npm-modules 存放全局 NPM 包
  • D:\npm-cache 存放 NPM 缓存

第二步

打开命令提示符,执行下面两条命令:

npm config set prefix "D:\npm-modules"
npm config set cache "D:\npm-cache"

执行成功后,可以用 npm config ls 命令查看配置的结果

第三步

验证配置成功后,需要配置环境变量,以便于在 CMD 中可以执行 NPM 全局包命令;

在环境变量的Path变量名中,新建变量值:

D:\npm-modules

结束

重新执行NPM全局安装命令 npm install -g xxx,查看 NPM 依赖包在全局的默认安装目录是否为配置好的目录,如果成功下载到了设置后的目录下,就成功修改了默认 NPM 全局包安装路径。

附言

默认安装 Node.JS 环境后,另外会默认使用 %APPDATA%\npm%APPDATA%\npm-cache 作为 NPM 全局包和缓存路径;如果出现一开始的目录创建权限报错,也可以强制设置使用这两个目录:

npm config set prefix "%APPDATA%\npm"
npm config set cache "%APPDATA%\npm-cache"

上一篇
下一篇