我在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 ## [错误]包还原失败
答案 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中失败的新解决方案文件。
现在世界再次变得丰富多彩。