我有一个项目在本地构建得很好,但是它在vsts中的构建失败了 dotnet build 命令。这个错误在我看来很奇怪,因为我不知道为什么构建命令会再次尝试还原包。错误如下:
dotnet build
2018-07-09T11:06:48.2541705Z重试“FindPackagesByidaSync” 来源 ' https://mycompany.pkgs.visualstudio.com/_packaging/5b9fd539-d653-4771-aa3c-6544d73b1234/nuget/v3/flat2/system.data.sqlclient/index.json ’。 2018-07-09T11:06:48.2562315Z响应状态码未显示 成功:401(未授权)。
在生成步骤之前,我有一个已成功完成的dotnet还原步骤。还原步骤使用一个nuget.config文件,该文件在vsts中包含私有feed,但url看起来与错误中的不相似。这是文件,只是想弄清楚。
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <add key="MyCompany.NuGet.Internal" value="https://MyCompany.pkgs.visualstudio.com/_packaging/MyCompany.NuGet.Internal/nuget/v3/index.json" /> <add key="MyCompany.NuGet.ThirdParty" value="https://MyCompany.pkgs.visualstudio.com/_packaging/MyCompany.Nuget.ThirdParty/nuget/v3/index.json" /> </packageSources> </configuration>
有什么问题吗?Dotnet生成步骤是否完全忽略nuget.config文件并在项目中尝试提要?我不知道如何生成提要url。
我能通过 --no-restore 论证 dotnet build 命令。
--no-restore
我刚读到 this article here 想试一下就成功了。
对于.net core 1.x sdk,您需要显式地运行dotnet 在运行dotnet build之前还原。从.NET Core 2.0 sdk开始, 运行dotnet build时,dotnet restore隐式运行。如果你愿意 要在运行build命令时禁用隐式还原,可以 传递--no restore选项
看起来像 dotnet生成 在vsts中,不关心nuget.config文件,并尝试在没有它的情况下执行还原。
dotnet生成