解决 Windows 系统使用 NPM 时遇到的各种问题

pngquant-bin 模块安装失败

错误信息:

1
2
3
4
5
6
7
8
9
10
11
npm ERR! path E:\Workspaces_NodeJs\hexo\node_modules\pngquant-bin
npm ERR! command failed
npm ERR! command C:\WINDOWS\system32\cmd.exe /d /s /c node lib/install.js
npm ERR! ‼ getaddrinfo ENOENT raw.githubusercontent.com
npm ERR! ‼ pngquant pre-build test failed
npm ERR! i compiling from source
npm ERR! × ErroE: pngquant failed to build, make sure that libpng-dev is installed
npm ERR! at E:\Workspaces_NodeJs\hexo\node_modules\bin-build\node_modules\execa\index.js:231:11
npm ERR! at runMicrotasks (<anonymous>)
npm ERR! at processTicksAndRejections (node:internal/process/task_queues:96:5)
npm ERR! at async Promise.all (index 0)

解决方法一:

使用 系统管理员身份,在 Windows 系统上执行 npm install -g windows-build-tools 命令,安装系统缺失的编译工具,然后执行 npm install 命令安装需要的 NPM 模块

解决方法二(推荐):

使用 CNPM 替代 NPM,然后执行 cnpm install 命令安装需要的 NPM 模块

1
2
# 安装CNPM
> npm install -g cnpm --registry=https://registry.npmmirror.com

解决方法三(推荐):

在 Windows 系统上挂载 VPN,然后执行 npm install 命令安装需要的 NPM 模块,这可以从根本上解决国内访问 raw.githubusercontent.com 域名时被墙的问题

解决方法四:

更改 Host 文件 C:\Windows\System32\drivers\etc\hosts,在文件末尾添加以下内容,解决国内访问 raw.githubusercontent.com 域名时被墙的问题,然后执行 npm install 命令安装需要的 NPM 模块

1
199.232.28.133  raw.githubusercontent.com