为包添加 PackageReference 失败,返回 401(未授权)
Adding PackageReference for package fails with 401 (Unauthorized)
我正在尝试将第三方 NuGet 包(例如 StyleCop)安装到项目中。该项目还有从我们自己的私有 NuGet 源安装的包。尝试安装软件包时,我们收到这样的 401 错误。
MyProject> dotnet add .\MyProject.csproj package StyleCop
Determining projects to restore...
Writing C:\Users\me\AppData\Local\Temp\tmp6A51.tmp
info : Adding PackageReference for package 'StyleCop' into project '.\MyProject.csproj'.
info : CACHE https://api.nuget.org/v3/registration5-gz-semver2/stylecop/index.json
info : GET https://mediavaletsc.pkgs.visualstudio.com/_packaging/c559332f-5d8d-4d3f-8fc2-6e06125775fa/nuget/v3/registrations2-semver2/stylecop/index.json
info : Unauthorized https://mycompany.pkgs.visualstudio.com/_packaging/xxx-xxx-xxx-xxx-xxx/nuget/v3/registrations2-semver2/stylecop/index.json 680ms
error: Response status code does not indicate success: 401 (Unauthorized).
奇怪的是,运行 dotnet restore
工作得很好,即使在 git clean -xfd
之后也是如此。我们如何配置 dotnet
and/or nuget
来接受 StyleCop
或任何其他 public 软件包的安装?
我们需要使用 Visual Studio 团队服务 (VSTS) 重新进行身份验证,因为 API 密钥已过期 and/or 已被撤销。
之所以dotnet restore
仍然有效,但dotnet add ... package ...
失败,是因为前者使用了本地缓存,而后者命中了服务器。在我们 运行 nuget locals all -clear
.
之后恢复也停止工作
要重新验证,请执行以下操作。
nuget sources remove -name $sourceName | Out-Null;
nuget sources add -name $sourceName -source $sourcePath -username $username -password $apiKey
我正在尝试将第三方 NuGet 包(例如 StyleCop)安装到项目中。该项目还有从我们自己的私有 NuGet 源安装的包。尝试安装软件包时,我们收到这样的 401 错误。
MyProject> dotnet add .\MyProject.csproj package StyleCop
Determining projects to restore...
Writing C:\Users\me\AppData\Local\Temp\tmp6A51.tmp
info : Adding PackageReference for package 'StyleCop' into project '.\MyProject.csproj'.
info : CACHE https://api.nuget.org/v3/registration5-gz-semver2/stylecop/index.json
info : GET https://mediavaletsc.pkgs.visualstudio.com/_packaging/c559332f-5d8d-4d3f-8fc2-6e06125775fa/nuget/v3/registrations2-semver2/stylecop/index.json
info : Unauthorized https://mycompany.pkgs.visualstudio.com/_packaging/xxx-xxx-xxx-xxx-xxx/nuget/v3/registrations2-semver2/stylecop/index.json 680ms
error: Response status code does not indicate success: 401 (Unauthorized).
奇怪的是,运行 dotnet restore
工作得很好,即使在 git clean -xfd
之后也是如此。我们如何配置 dotnet
and/or nuget
来接受 StyleCop
或任何其他 public 软件包的安装?
我们需要使用 Visual Studio 团队服务 (VSTS) 重新进行身份验证,因为 API 密钥已过期 and/or 已被撤销。
之所以dotnet restore
仍然有效,但dotnet add ... package ...
失败,是因为前者使用了本地缓存,而后者命中了服务器。在我们 运行 nuget locals all -clear
.
要重新验证,请执行以下操作。
nuget sources remove -name $sourceName | Out-Null;
nuget sources add -name $sourceName -source $sourcePath -username $username -password $apiKey