为什么我在使用节点 18/NPM8 时遇到"npm WARN tarball tarball data for ... seems to be corrupted. Trying again."?



我有一个简单的项目,它在17上安装得很好。我将我的节点版本升级到了18,现在当我运行npm i时,我为所有dep都得到了这些。。。

npm WARN tarball tarball data for node-notifier@https://registry.npmjs.org/node-notifier/-/node-notifier-8.0.2.tgz (sha512-oJP/9NAdd9+x2Q+rfphB2RJCHjod70RcRLjosiPMMu5gjIfwVnOUGq2nbTjTUbmy0DJ/tFIVT30+Qe3nzl4TJg==) seems to be corrupted. Trying again.
npm WARN tar zlib: incorrect data check
npm WARN tarball tarball data for handlebars@https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz (sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==) seems to be corrupted. Trying again.
npm WARN tar zlib: incorrect data check
npm WARN tarball tarball data for esbuild-darwin-64@https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.13.14.tgz (sha512-YmOhRns6QBNSjpVdTahi/yZ8dscx9ai7a6OY6z5ACgOuQuaQ2Qk2qgJ0/siZ6LgD0gJFMV8UINFV5oky5TFNQQ==) seems to be corrupted. Trying again.
npm WARN tar TAR_ENTRY_INVALID checksum failure
...
npm WARN tar TAR_ENTRY_INVALID invalid base256 encoding
npm WARN tar TAR_ENTRY_INVALID invalid base256 encoding
npm WARN tar TAR_ENTRY_INVALID checksum failure
npm WARN tar TAR_ENTRY_INVALID checksum failure
...
npm ERR! code Z_DATA_ERROR
npm ERR! errno -3
npm ERR! zlib: incorrect data check
npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/.../.npm/_logs/2021-11-19T16_22_54_385Z-debug.log

我试过npm cache clear --force,但似乎没有帮助。

什么是错误的,为什么deps被标记为无效?

node --version
v18.0.0-pre

其他步骤

  1. 我试着删除~/.npm(我在MacO上(,但没有帮助
  2. 删除了所有node_module和包锁定

我被迫降级到16。在我达到18岁之前,我使用了一个个人编译的17版本。我试着重建17.x分支,但它一直有同样的问题。我最终不得不一路降级回LTS(从站点(。我将尝试一个16.x版本,看看它是否至少有效。目前看来,所有16后版本现在都不使用基本的Node/NPM设置。在问题解决之前,让问题悬而未决。

最新更新