# 一、npm 安装报错 "npm ERR! code Z_BUF_ERROR" 问题解决

# 1. 引言

最近在研究 VS Code 插件开发,使用 Yeoman 创建 VS Code 插件示例项目后,需要执行一个 <font color="#dd0000">npm install</font> 的命令来安装项目所需要的依赖文件,但是报错了:

I’m all done. Running npm install for you to install the required dependencies. If this fails, try running the command yourself.
npm ERR! code Z_BUF_ERROR
npm ERR! errno -5
npm ERR! zlib: unexpected end of file
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\Think\AppData\Roaming\npm-cache_logs\2019-04-25T02_29_42_180Z-debug.log


如果所示:

于是我按照提示,再执行了一遍 <font color="#dd0000">npm install</font>,还是报错:

# 2. 解决

最后在网上找了很多资料,有替换 npm 国内源的方法(实测不行),后来找到一个清除 npm 缓存的方法,自测可行:

npm cache clean --force

然后执行 <font color="#dd0000">npm install</font> 就可以了:

# 二、npm WARN deprecated left-pad@1.3.0: use String.prototype.padStart () npm ERR! path git

it <https://github.com/lukeed/kleur/releases/tag/v3.0.0\> for migration path(s).
npm WARN deprecated left-pad@1.3.0: use String.prototype.padStart()
npm ERR! path git
npm ERR! code ENOENT
npm ERR! errno ENOENT
npm ERR! syscall spawn git
npm ERR! enoent Error while executing:
npm ERR! enoent undefined ls-remote -h -t ssh://git@github.com/sohee-lee7/Squire.git
npm ERR! enoent
npm ERR! enoent
npm ERR! enoent spawn git ENOENT
npm ERR! enoent This is related to npm not being able to find a file.

我也不知道这是为什么会报这样的错误,但是我的解决办法是这样的:

不要直接在 WebStorm 的命令行中执行 npm install,而是来到你项目所在的目录下,进入到.git 这一文件夹下面,右键点击 Git Bash Here,然后在这里输入 npm install,就可以了,等待它 install 完成以后,就去启动你的 vue,完成。如果不行的大,大家可以先执行 npm cache clean --force 清除缓存,然后再执行 npm install 即可。