Azure DevOps Pipeline在NuGet还原任务上失败

时间:2020-06-09 09:08:48

标签: c# azure-devops nuget azure-functions azure-pipelines-release-pipeline

我在Visual Studio 2019中创建了一个Azure函数项目。一切在我的桌面上都运行良好,但是该项目在Azure DevOps Pipeline中的NuGet Restore任务中失败,并出现以下错误。

Microsoft.Azure.WebJobs 3.0.0软件包与netcoreapp3.1不兼容

2020-06-09T08:32:02.2578449Z ## [错误] nuget命令失败,退出代码(1)和错误(E:\ agent_work \ 491 \ s \ CPUSRETools \ AzureCapacityUsage \ AzureCapacityUsage.csproj中的错误 软件包Microsoft.Azure.WebJobs 3.0.0与netcoreapp3.1(.NETCoreApp,Version = v3.1)不兼容。软件包Microsoft.Azure.WebJobs 3.0.0支持:netstandard2.0(.NETStandard,Version = v2.0) 软件包Microsoft.Azure.WebJobs.Extensions 3.0.0与netcoreapp3.1(.NETCoreApp,Version = v3.1)不兼容。软件包Microsoft.Azure.WebJobs.Extensions 3.0.0支持:netstandard2.0(.NETStandard,Version = v2.0) 软件包Microsoft.Azure.WebJobs.Extensions.Http 3.0.0与netcoreapp3.1(.NETCoreApp,Version = v3.1)不兼容。软件包Microsoft.Azure.WebJobs.Extensions.Http 3.0.0支持:netstandard2.0(.NETStandard,Version = v2.0) 一个或多个软件包与.NETCoreApp,Version = v3.1不兼容。)

2020-06-09T08:32:02.2592475Z ## [debug]已处理:## vso [task.issue type = error;] nuget命令失败,出现退出代码(1)和错误(E:\中的错误:\ agent_work \ 491 \ s \ CPUSRETools \ AzureCapacityUsage \ AzureCapacityUsage.csproj%0D%0A软件包Microsoft.Azure.WebJobs 3.0.0与netcoreapp3.1(.NETCoreApp,Version = v3.1)不兼容。 3.0.0支持:netstandard2.0(.NETStandard,Version = v2.0)%0D%0A软件包Microsoft.Azure.WebJobs.Extensions 3.0.0与netcoreapp3.1不兼容(.NETCoreApp,Version = v3.1) 。软件包Microsoft.Azure.WebJobs.Extensions 3.0.0支持:netstandard2.0(.NETStandard,Version = v2.0)%0D%0A软件包Microsoft.Azure.WebJobs.Extensions.Http 3.0.0与netcoreapp3不兼容。 1(.NETCoreApp,Version = v3.1)。软件包Microsoft.Azure.WebJobs.Extensions.Http 3.0.0支持:netstandard2.0(.NETStandard,Version = v2.0)%0D%0A一个或多个软件包不兼容使用.NETCoreApp,版本= v3.1。)

2020-06-09T08:32:02.2594955Z ## [debug]任务结果:失败

2020-06-09T08:32:02.2595537Z ## [错误]包还原失败

2 个答案:

答案 0 :(得分:0)

从错误中显示出dotnet任务正在使用2.1.806版本的dotnet sdk。但是您的项目针对的是dotnet 3.1。

您可以使用任务Use .Net Core在管道中使用特定版本的.Net Core(版本3.1)。见下文

- task: UseDotNet@2
  displayName: 'Use .NET Core sdk'
  inputs:
    packageType: sdk
    version: 3.x

- task: DotNetCoreCLI@2
    inputs:
      command: restore
      projects: '**\*.csproj'

答案 1 :(得分:0)

我设法找到解决该问题的方法。 我有9个项目可以使用VSBuild Task很好地构建。一个项目无法在VSBuild Task中构建。因此,我将该任务移至新的解决方案。 将VSBuild指向具有9个项目的旧解决方案,并将.NET生成任务指向VSBuild中失败的新解决方案文件。

现在世界再次变得丰富多彩。