Couldn't find a configuration setting named 'registry'
以下回答基于GPT3.5
1. 检查 Yarn 版本
首先,检查你正在使用的 Yarn 版本。Yarn 不同版本的配置方式有所不同,特别是从 Yarn 1.x 升级到 Yarn 2.x(又称 Berry)后,配置的方式发生了变化。
可以使用以下命令来检查当前的 Yarn 版本:
yarn --version
- Yarn 1.x:如果你使用的是 1.x 版本,
yarn config set registry https://registry.npmjs.org/命令应该能正常工作。 - Yarn 2.x 及以上(Berry):Yarn 2.x 引入了新的配置方式,配置不再通过
yarn config set命令,而是通过.yarnrc.yml文件来管理。
2. Yarn 2.x(Berry)配置方式
如果你使用的是 Yarn 2.x 或更高版本,配置注册表需要通过 .yarnrc.yml 文件,而不是使用 yarn config set 命令。
按照以下步骤来设置注册表:
- 在你的项目根目录中找到或创建
.yarnrc.yml文件。 - 在
.yarnrc.yml文件中添加如下配置:
npmRegistryServer: "https://registry.npmjs.org/"
这样就能在 Yarn 2.x 或更高版本中设置注册表。
3. Yarn 1.x 配置方式
如果你使用的是 Yarn 1.x 版本,且 yarn config set registry 命令仍然无法正常工作,可以尝试以下操作:
手动编辑 .yarnrc 文件:
- 进入项目根目录。
- 检查是否存在
.yarnrc文件(这是一个隐藏文件)。 - 打开
.yarnrc文件,添加或修改注册表配置:
registry "https://registry.npmjs.org/"
如果 .yarnrc 文件不存在,可以手动创建一个并添加上述配置。
清理 Yarn 缓存:
有时,旧的缓存或者配置文件可能导致问题。尝试清理 Yarn 缓存并重新配置:
yarn cache clean
然后再次尝试运行 yarn config set registry 命令,或者手动编辑 .yarnrc 文件。
4. 升级或降级 Yarn 版本
如果你不确定当前使用的是哪个版本的 Yarn,或者遇到了无法解决的问题,考虑升级或降级到你希望使用的版本。
-
升级到最新的 Yarn:
npm install -g yarn
-
降级到 Yarn 1.x:
npm install -g yarn@1.x
5. 检查其他配置文件
Yarn 会使用多个配置文件存储设置,可能存在冲突。检查是否有 .npmrc 文件或其他全局 Yarn 配置文件。
-
查看全局配置:
Yarn 的全局配置可能存储在~/.yarnrc或~/.config/yarn/global中。你可以通过以下命令查看当前的 Yarn 配置:
yarn config list
这将显示当前 Yarn 使用的所有配置,包括注册表设置。
6. 删除冲突文件
在 Windows 上删除文件
如果你想要删除目录中的所有 package.json 或 yarn.lock 文件,你可以使用 del 命令结合通配符。例如:
del /s D:\package.json del /s D:\yarn.lock
如果你需要使用 Git Bash 或 PowerShell
如果你习惯使用类 Unix 命令的环境(比如 rm),你可以使用以下两种方式之一:
-
Git Bash: 如果你已经安装了 Git,可以使用 Git Bash 来运行
rm命令。打开 Git Bash 后执行:rm D:/package.json rm D:/yarn.lock
-
PowerShell: 在 PowerShell 中,你可以使用
Remove-Item来删除文件:Remove-Item D:\package.json Remove-Item D:\yarn.lock
总结
- 如果你使用 Yarn 2.x 或以上版本(Berry),需要通过
.yarnrc.yml文件来设置注册表。 - 如果你使用 Yarn 1.x,可以使用
yarn config set registry https://registry.npmjs.org/命令,或者手动编辑.yarnrc文件。 - 确认你的 Yarn 版本,并清理缓存,确保没有旧的配置干扰。

浙公网安备 33010602011771号