为什么 Yarn 会失败并出现“未找到候选者”错误?

Mar*_*ies 16 netlify yarnpkg netlify-cli yarnpkg-v2

例如,我尝试netlify-cli使用以下命令从 17.7.0 升级到 17.8.1yarn upgrade-interactive,并发生以下错误:

\n
\xe2\x9e\xa4 YN0000: \xc2\xb7 Yarn 4.0.2\n\xe2\x9e\xa4 YN0000: \xe2\x94\x8c Resolution step\n\xe2\x9e\xa4 YN0082: \xe2\x94\x82 @netlify/zip-it-and-ship-it@npm:9.28.1: No candidates found\n\xe2\x9e\xa4 YN0000: \xe2\x94\x94 Completed in 1s 602ms\n\xe2\x9e\xa4 YN0000: \xc2\xb7 Failed with errors in 1s 617ms\n
Run Code Online (Sandbox Code Playgroud)\n

\n
\xe2\x9e\xa4 YN0000: \xc2\xb7 Yarn 4.0.2\n\xe2\x9e\xa4 YN0000: \xe2\x94\x8c Resolution step\n\xe2\x9e\xa4 YN0082: \xe2\x94\x82 @formkit/vue@npm:^1.3.0: No candidates found\n\xe2\x9e\xa4 YN0000: \xe2\x94\x94 Completed in 22s 953ms\n\xe2\x9e\xa4 YN0000: \xc2\xb7 Failed with errors in 22s 972ms\n
Run Code Online (Sandbox Code Playgroud)\n

根据 npmjs.com 包@netlify/zip-it-and-ship-it可在所请求的版本中使用:

\n

在此输入图像描述

\n

我最近在使用不同的软件包时多次遇到此错误。

\n

这个错误到底告诉我什么以及为什么会发生这种情况?

\n

Mar*_*ies 24

正如有人在 GitHub 上指出的:

Yarn 在本地缓存远程注册表的版本历史并依赖它,而不是在本地找不到版本再次查找远程注册表

这很可能是一个错误,目前可以通过删除NPM 的 Yarn Berry 元数据缓存来解决,该缓存位于Windows上

C:\Users<您的用户>\AppData\Local\Yarn\Berry\metadata\

或这里

〜/.yarn/berry/元数据/npm

编辑:您还可以在package.json添加预安装挂钩,以在每次运行纱线安装之前清理注册表缓存

"scripts": {
   "preinstall": "rm -r ~/AppData/Local/Yarn/Berry/metadata/npm/"
   ...
}
Run Code Online (Sandbox Code Playgroud)

  • 这对我有用!谢谢 rm -rf ~/.yarn/berry/metadata/npm (5认同)