首页 > 解决方案 > 使用 dotnet add 包忽略不可访问的源

问题描述

当我尝试通过dotnetcli 添加 NuGet 包时,我收到一个错误,即它无法访问我的自定义 NuGet 源之一。有没有办法说“我不在乎,从你能恢复的地方恢复”?

McMaster.Extensions.CommandLineUtils显然它存在于 NuGet.org 中并找到它但随后停止 b/c 它无法访问自定义源 ‍♂️。

PS c:\Temp\blah-project> dotnet 添加包 McMaster.Extensions.CommandLineUtils
信息:将包“McMaster.Extensions.CommandLineUtils”的 PackageReference 添加到项目“c:\Temp\blah-project\blah-project.csproj”中。
信息:恢复包 c:\Temp\blah-project\blah-project.csproj
信息:GET https://api.nuget.org/v3-flatcontainer/mcmaster.extensions.commandlineutils/index.json
信息:OK https: //api.nuget.org/v3-flatcontainer/mcmaster.extensions.commandlineutils/index.json 147ms
错误:无法加载源https://myinstace.pkgs.visualstudio.com/_packaging/Blah/nuget/的服务索引v3/index.json
错误:响应状态码不表示成功:401(未授权)。

标签: c#.net-corenugetcommand-line-interface

解决方案


在恢复包时,dotnet 会调用所有包源以获取包并使用最先响应的包。

在您的情况下,由于某些身份验证问题,它无法访问该来源。可以使用以下命令禁用该源,然后尝试拉取包。

dotnet nuget disable source <NAME> [--configfile <FILE>]

推荐阅读