NuGet恢复失败:同一组织内的另一个项目中的源无法找到。
使用nuget restore
在管道中时,无法找到不同项目中的源。
NuGet恢复失败:同一组织内的另一个项目中的源无法找到。
使用nuget restore
在管道中时,无法找到不同项目中的源。
经过长时间的搜索,以下是使其始终正常工作所需的步骤:
设置权限
设置构建管道
nuget.config 文件
并确保它被检入feedsToUse
设置为 'config'
azure-pipelines.yml
- task: DotNetCoreCLI@2
displayName: DotNetCore-Restore
inputs:
command: 'restore'
projects: '$(PathToSolution)'
feedsToUse: 'config'
nugetConfigPath: '$(PathToNugetConfig)/nuget.config'
includeNuGetOrg: true
nuget.config
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<clear />
<add key="feed_name" value="feed_url" />
</packageSources>
</configuration>
在管道中添加身份验证任务是不必要的,因为dotnet命令会自动完成... 但是:
大多数 dotnet 命令(包括构建、发布和测试)都包括一个隐含的还原步骤。这将针对经过身份验证的源失败,即使您之前已成功运行了 dotnet restore 步骤,因为之前的步骤将清除其使用的凭据。
dotnet add package
不起作用,正如您从微软文档中的最后一句引用所指示的那样。 - Lars Pellarin