Размещенный в DevOps конвейер не может собрать.NET Core 2.2
С выпуском.NET Core 2.2 я ожидал, что смогу создавать такие проекты в нашем конвейере DevOps (Azure), размещенном в Microsoft. Но шаг восстановления завершается неудачно, говоря, что 2.2 не поддерживается:
2018-12-11T14:57:49.0856135Z "D:\a\1\s\My.Project\My.Project.csproj" (Restore target) (1) ->
2018-12-11T14:57:49.0857867Z "D:\a\1\s\MyProject.EntityFramework\MyProject.EntityFramework.csproj" (_GenerateRestoreGraphProjectEntry target) (2:3) ->
2018-12-11T14:57:49.0858029Z (_CheckForUnsupportedNETCoreVersion target) ->
2018-12-11T14:57:49.0858191Z C:\Program Files\dotnet\sdk\2.1.402\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.TargetFrameworkInference.targets(137,5): error NETSDK1045: The current .NET SDK does not support targeting .NET Core 2.2. Either target .NET Core 2.1 or lower, or use a version of the .NET SDK that supports .NET Core 2.2. [D:\a\1\s\MyProject.EntityFramework\MyProject.EntityFramework.csproj]
2018-12-11T14:57:49.0858287Z
2018-12-11T14:57:49.0858338Z
2018-12-11T14:57:49.0858398Z "D:\a\1\s\My.Project\My.Project.csproj" (Restore target) (1) ->
2018-12-11T14:57:49.0858504Z "D:\a\1\s\My.Project\My.Project.csproj" (_GenerateRestoreGraphProjectEntry target) (1:5) ->
2018-12-11T14:57:49.0858645Z C:\Program Files\dotnet\sdk\2.1.402\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.TargetFrameworkInference.targets(137,5): error NETSDK1045: The current .NET SDK does not support targeting .NET Core 2.2. Either target .NET Core 2.1 or lower, or use a version of the .NET SDK that supports .NET Core 2.2. [D:\a\1\s\My.Project\My.Project.csproj]
Проект строится нормально локально, поэтому я думаю, что, скорее всего, я что-то упустил - тем более, что я ничего не нашел в своем поиске в интернете подобных ошибок.
Неужели это еще не поддерживается?
4 ответа
Итак, есть задача ".NET Core Installer", которую можно добавить перед задачей "Восстановить" и запросить установку 2.2.100 в первую очередь на этапах сборки.
Это подходит для моего проекта:
steps:
- task: DotNetCoreInstaller@0
displayName: 'Use .NET Core SDK Tool Installer'
inputs:
version: 2.2.100
- script: dotnet build --configuration $(buildConfiguration)
displayName: 'dotnet build $(buildConfiguration)'
У меня была такая же проблема с моим конвейером. Вот решение:
Добавьте к своей работе (нажмите кнопку "плюс") в конвейере задачу .NET Core SDK Installer. Вы можете найти его в окне поиска
Убедитесь, что поставили эту задачу на вершину своей работы. Вы можете использовать перетаскивание.
- Установите версию.Net Core SDK Installer как минимум на ту же версию, что и ваша.
Вы можете увидеть все доступные версии, нажав на слово " здесь " во всплывающем окне.
Ответ @bit0001 правильный. У Microsoft есть список поддерживаемых версий, которые можно установить с помощью этой задачи. Вы можете найти эти версии здесь.
Как видите, 2.1.500 поддерживается при установке sdk
, 2.1.0 нет, вам нужно использовать 2.1.300. При установке только среды выполнения вы можете использовать 2.1.0. В настоящее время поддерживается последняя версия 2.2 - 2.2.100.