Azure devops Azure DevOps构建管道中的NuGet包还原

Azure devops Azure DevOps构建管道中的NuGet包还原,azure-devops,tfsbuild,azure-pipelines,nuget-package-restore,azure-devops-server-2019,Azure Devops,Tfsbuild,Azure Pipelines,Nuget Package Restore,Azure Devops Server 2019,这是我昨天提出的一个问题的后续: 此后,我从VS2013解决方案中删除了“.nuget”解决方案文件夹,但我的构建管道中的“Visual Studio构建”任务现在失败,每个项目都有一个错误: [错误]xxxxx.csproj(214,5):错误:此项目引用此计算机上缺少的NuGet包。启用NuGet软件包还原以下载它们。有关详细信息,请参阅。缺少的文件是c:\Temp\VSTS Agent\u work\10\s\xxxxx\.nuget\nuget.targets 我试着在VS构建任务中检查

这是我昨天提出的一个问题的后续:

此后,我从VS2013解决方案中删除了“.nuget”解决方案文件夹,但我的构建管道中的“Visual Studio构建”任务现在失败,每个项目都有一个错误:

[错误]xxxxx.csproj(214,5):错误:此项目引用此计算机上缺少的NuGet包。启用NuGet软件包还原以下载它们。有关详细信息,请参阅。缺少的文件是c:\Temp\VSTS Agent\u work\10\s\xxxxx\.nuget\nuget.targets

我试着在VS构建任务中检查“Restore-NuGet-packages”选项,但是没有任何区别。复选框显示此选项已被弃用,要使用“Nuget tool installer”任务,我也尝试过,但仍然没有帮助

我甚至在构建管道中添加了一个“Nuget(command=restore)”任务。它的输出显示它已将Nuget包还原到解决方案的\packages文件夹中,但同样没有乐趣

我已经检查了.csproj文件中的相对包路径,它们正确地指向由上述“Nuget restore”任务还原的包文件夹


我是否丢失了一些东西,或者是唯一可以将“.nuget”解决方案文件夹放回的修复程序?

找到了答案:我需要从每个.csproj文件中删除“旧方式”包还原的残余内容,即:

<Import Project="$(SolutionDir)\.nuget\NuGet.targets" Condition="Exists('$(SolutionDir)\.nuget\NuGet.targets')" />
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
  <PropertyGroup>
    <ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
  </PropertyGroup>
  <Error Condition="!Exists('$(SolutionDir)\.nuget\NuGet.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)\.nuget\NuGet.targets'))" />
</Target>

此项目引用此计算机上缺少的NuGet包。启用NuGet软件包还原以下载它们。有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkID=322105. 缺少的文件是{0}。
根据这一答复: