【发布时间】:2019-08-08 15:46:24
【问题描述】:
我的项目中有一个外部 nuget 包源,我通过 Package Manager Settings 在 Visual Studio 2017 中添加。我可以正确安装这些软件包,但是当我点击 publish(它是一个 dotnet 核心控制台应用程序)时。我得到这个错误状态:
2>为源“https://***.azure.com/*****/system.servicemodel.duplex/index.json”重试“FindPackagesByIdAsync”。 2>响应状态码不表示成功:401(未授权)。
我搜索了一个使用cmd 添加凭据的解决方案,但是当我尝试执行添加命令时,我从 cmd 收到此错误消息:
指定的名称已添加到可用包源列表中。请提供一个唯一的名称。
所以我需要从 Visual Studio 中删除包源(使用包管理器设置),在我删除包源后,cmd 命令有效,但是我无法再访问 Visual Studio 中的外部包(因为我删除了它以便可以从命令行添加)。
我该如何解决这个问题?
编辑: cmd语法是这样的:
nuget.exe sources add -name MyExternalSource -source https://***/nuget/v3/index.json -username nugetUser -password MyToken
【问题讨论】:
-
在继续之前,docs.microsoft.com/en-us/nuget/consume-packages/… 检查您的用户凭据的确切存储位置。还可以尝试使用
dotnet publish生成部署二进制文件,这可能会给您比 Visual Studio 更好的错误消息。 -
您在发布之前是否成功构建了项目?如果您的情况在发布失败时构建良好,也许您可以尝试重新构建项目并确保将引用的程序集复制到输出文件夹,然后发布项目。
标签: c# visual-studio nuget