gyp ERR! stack Error: There was a fatal problem while downloading/extracting the tarball 这个错误提示就是告诉我们在解压下载的文件的时候发生了异常, 可检查相关的文件是否正常,如不正常可能是项目中依赖的文件版本变更,原来的文件失效了,删除项目下的 xxx.lock文件后重新下载即可。
错误代码:
error /xxx/node_modules/deasync: Command failed.
Exit code: 1
Command: node ./build.js
Arguments:
Directory: /xxx/node_modules/deasync
Output:
gyp info it worked if it ends with ok
gyp info using node-gyp@5.1.0
gyp info using node@20.0.0 | darwin | x64
gyp info find Python using Python version 3.12.3 found at "/usr/local/opt/python@3.12/bin/python3.12"
gyp http GET https://npmmirror.com/package/dist/v20.0.0/node-v20.0.0-headers.tar.gz
gyp http 200 https://npmmirror.com/package/dist/v20.0.0/node-v20.0.0-headers.tar.gz
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: There was a fatal problem while downloading/extracting the tarball
gyp ERR! stack at Unpack.afterTarball (~/.nvm/versions/node/v20.0.0/lib/node_modules/npm/node_modules/node-gyp/lib/install.js:212:21)
gyp ERR! stack at Unpack.emit (node:events:511:28)
gyp ERR! stack at [maybeClose] (~/.nvm/versions/node/v20.0.0/lib/node_modules/npm/node_modules/tar/lib/unpack.js:217:12)
gyp ERR! stack at Unpack.opt.ondone (~/.nvm/versions/node/v20.0.0/lib/node_modules/npm/node_modules/tar/lib/unpack.js:131:23)
gyp ERR! stack at Unpack.emit (node:events:511:28)
gyp ERR! stack at [emit] (~/.nvm/versions/node/v20.0.0/lib/node_modules/npm/node_modules/tar/lib/parse.js:235:12)
gyp ERR! stack at [maybeEnd] (~/.nvm/versions/node/v20.0.0/lib/node_modules/npm/node_modules/tar/lib/parse.js:351:17)
gyp ERR! stack at [consumeChunk] (~/.nvm/versions/node/v20.0.0/lib/node_modules/npm/node_modules/tar/lib/parse.js:380:21)
gyp ERR! stack at Unpack.write (~/.nvm/versions/node/v20.0.0/lib/node_modules/npm/node_modules/tar/lib/parse.js:315:25)
gyp ERR! stack at Unpack.end (~/.nvm/versions/node/v20.0.0/lib/node_modules/npm/node_modules/tar/lib/parse.js:424:14)
gyp ERR! System Darwin 21.6.0
gyp ERR! command "~/.nvm/versions/node/v20.0.0/bin/node" "~/.nvm/versions/node/v20.0.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /xxx/node_modules/deasync
gyp ERR! node -v v20.0.0
gyp ERR! stack Error: There was a fatal problem while downloading/extracting the tarball 这个已经说的很清楚了,在解压文件时异常, 直接打开上面的地址看看 https://npmmirror.com/package/dist/v20.0.0/node-v20.0.0-headers.tar.gz这个根本就不是一个文件地址。
解决方法
删除项目文件夹下的 xxx.lock文件,如 yarn.lock 然后重新执行 yarn 命令即可