解决npm报错 gifsicle pre-build test failed

1,154 阅读1分钟

问题

最近在接管某个前端项目,拿到前端源码的第一件事就是运行npm install 加载各种依赖,结果抛出一个command failed

image.png

原因

具体出错的原因是因为项目依赖了gifsicle这个依赖,而这个依赖貌似极其难以被下载,所以导致出现了command failed错误

解决方式

经过一番查阅后得出一个有效的解决方案,那就是修改hosts

以windows为例,我使用的是SwitchHosts这款软件对hosts进行修改,一定要记得以管理员身份运行

image.png

添加hosts

image.png

hosts内容如下

52.74.223.119 github.com
192.30.253.119 gist.github.com
54.169.195.247 api.github.com
185.199.111.153 assets-cdn.github.com
151.101.76.133 raw.githubusercontent.com

应用添加的hosts

image.png

验证

回到项目目录,这里建议先把node_modules删掉重新npm install

image.png

为了快速删除node_modules,可以安装rimraf依赖

npm install rimraf -g

删除node_modules命令

rimraf node_modules 

删除完毕后重新执行npm install

image.png

可以看到npm install最后执行成功,项目可以正常开始启动了