I'm trying to build a project in .NET 5.0 using Azure DevOps pipeline Build and I'm received this error
2020-11-14T01:59:45.8238544Z [command]"C:\Program Files\dotnet\dotnet.exe" build D:\a\1\s\XXX.csproj "-dl:CentralLogger,\"D:\a\_tasks\DotNetCoreCLI_5541a522-603c-47ad-91fc-a4b1d163081b\2.178.0\dotnet-build-helpers\Microsoft.TeamFoundation.DistributedTask.MSBuild.Logger.dll\"*ForwardingLogger,\"D:\a\_tasks\DotNetCoreCLI_5541a522-603c-47ad-91fc-a4b1d163081b\2.178.0\dotnet-build-helpers\Microsoft.TeamFoundation.DistributedTask.MSBuild.Logger.dll\""
2020-11-14T01:59:46.1472016Z Microsoft (R) Build Engine version 16.7.0+7fb82e5b2 for .NET
2020-11-14T01:59:46.1473316Z Copyright (C) Microsoft Corporation. All rights reserved.
2020-11-14T01:59:46.1473902Z
2020-11-14T01:59:46.6006398Z Determining projects to restore...
2020-11-14T01:59:47.2059773Z Restored D:\a\1\s\XXX.csproj (in 234 ms).
2020-11-14T01:59:47.2119638Z 1 of 2 projects are up-to-date for restore.
2020-11-14T01:59:47.3209350Z ##[error]C:\Program Files\dotnet\sdk\3.1.403\Microsoft.Common.CurrentVersion.targets(1177,5): Error MSB3644: The reference assemblies for .NETFramework,Version=v5.0 were not found. To resolve this, install the Developer Pack (SDK/Targeting Pack) for this framework version or retarget your application. You can download .NET Framework Developer Packs at https://aka.ms/msbuild/developerpacks
2020-11-14T01:59:47.3261839Z C:\Program Files\dotnet\sdk\3.1.403\Microsoft.Common.CurrentVersion.targets(1177,5): error MSB3644: The reference assemblies for .NETFramework,Version=v5.0 were not found. To resolve this, install the Developer Pack (SDK/Targeting Pack) for this framework version or retarget your application. You can download .NET Framework Developer Packs at https://aka.ms/msbuild/developerpacks [D:\a\1\s\XXX.csproj]
2020-11-14T01:59:47.3270768Z
2020-11-14T01:59:47.3274231Z Build FAILED.
2020-11-14T01:59:47.3275925Z
2020-11-14T01:59:47.3277393Z C:\Program Files\dotnet\sdk\3.1.403\Microsoft.Common.CurrentVersion.targets(1177,5): error MSB3644: The reference assemblies for .NETFramework,Version=v5.0 were not found. To resolve this, install the Developer Pack (SDK/Targeting Pack) for this framework version or retarget your application. You can download .NET Framework Developer Packs at https://aka.ms/msbuild/developerpacks [D:\a\1\s\XXX.csproj]
2020-11-14T01:59:47.3279484Z 0 Warning(s)
2020-11-14T01:59:47.3279860Z 1 Error(s)
2020-11-14T01:59:47.3280170Z
2020-11-14T01:59:47.3280537Z Time Elapsed 00:00:01.09
2020-11-14T01:59:47.3624731Z ##[error]Error: The process 'C:\Program Files\dotnet\dotnet.exe' failed with exit code 1
Does someone know if Azure DevOps pipelines have support for building .NET 5.0 code?
Yes, Azure DevOps Pipelines can build net5.0
apps.
If you are building with " .Net Core " ( DotNetCoreCLI
in yaml) task - add " Use .NET Core " ( UseDotNet
in yaml) task before it, with correct version:
- task: UseDotNet@2
inputs:
packageType: 'sdk'
version: '5.0.x'
- task: DotNetCoreCLI@2
displayName: 'dotnet build'
inputs:
command: 'build'
It's supported.
Since you are using .Net 5, instead of using Nuget restore, try to use Use .net core task
and Dotnet core task
with restore command.
- task: UseDotNet@2
displayName: 'Use .NET Core sdk 5.0.100'
inputs:
packageType: 'sdk'
version: '5.0.100'
includePreviewVersions: true
- task: DotNetCoreCLI@2
displayName: 'dotnet restore'
inputs:
command: restore
projects: '**/*.csproj'
It's strongly recommended to use dotnet restore
and dotnet build
tasks for projects that target .net core
. See this statement from Nuget task :
Also take a look at this similar question here: Azure CI pipeline for Blazor .NET 5 doesn't work
I needed to use both framework version to build my function in .net 5
steps:
- task: UseDotNet@2
inputs:
version: '5.0.x'
packageType: sdk
includePreviewVersions: false
- task: UseDotNet@2
inputs:
version: '3.1.x'
packageType: sdk
includePreviewVersions: false
Hope this answer will help people who are still using "Classic Pipelines" (not yaml) in Azure DevOps.
There is exactly the same task template to set the specific version of .net core sdk, that can be added through the search dialog:
Include it in your pipeline and set the correct version through the UI. Also make sure it runs before the actual build/publish steps.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.