.Net Core 3.1 nie jest jeszcze obsługiwany w hostowanych agentach Azure Pipelines? Zdobycie NETSDK1045

15

Wspaniale, że .Net Core 3.1 został wydany , ale nie jestem pewien, czy agenci hostowani przez Azure Pipelines nadrobili zaległości.

Mój potok YAML określa:

pool:
  vmImage: 'windows-latest'

a dotnet restorekrok robi to:

(_CheckForUnsupportedNETCoreVersion cel) -> C: \ Program Files \ dotnet \ sdk \ 3.0.100 \ Sdks \ Microsoft.NET.Sdk \ target \ Microsoft.NET.TargetFrameworkInference.targets (127,5): błąd NETSDK1045: Bieżący .NET Zestaw SDK nie obsługuje celowania .NET Core 3.1. Wybierz docelowy .NET Core 3.0 lub niższy albo użyj wersji .NET SDK, która obsługuje .NET Core 3.1. [D: \ a \ 1 \ s \ StatsNZ.BESt.DataService \ StatsNZ.BESt.DataService.csproj]

działa dobrze w .Net Core 3.0.

Czy są jakieś obejścia, czy musimy czekać na Azure DevOps, aby nadrobić zaległości?

EdH
źródło
1
stackoverflow.com/questions/56574113/ ... spójrz tutaj
Volodymyr Bilyachat,

Odpowiedzi:

37

.Net Core 3.1 nie jest jeszcze obsługiwany w hostowanych agentach Azure Pipelines?

Nie, hostowane agenty Azure Pipelines obsługują 3.1platformę .Net Core , ale najnowszy rdzeń .net 3.1.100nie jest obecnie domyślnie instalowany w hostowanych agentach Azure Pipelines.

Możesz sprawdzić Azure Pipelines Hosted Windows 2019 z obrazem VS2019 , domyślnie zainstalowaną najnowszą wersją .net core jest 3.0.100.

Aby korzystać z .net core 3.1, możesz dodać zadanie Użyj .NET Core, aby zainstalować .net core 3.1.100:

wprowadź opis zdjęcia tutaj

wprowadź opis zdjęcia tutaj

Mam nadzieję że to pomoże.

Leo Liu-MSFT
źródło
Wygląda na to, że masz doświadczenie w lazurowym devops pipeline, próbuję zaimplementować sonarqube w tym rurociągu. Ale zawsze zawodzi, ponieważ wersja Java Jdk ma mieć 8 lub 11. Jak mogę zmienić wersję Java JDK w moim potoku?
Mohamad Mousheimish
Dostałem ten błąd dla wersji 3.1.2 [błąd] dopasowanie wersji SDK
Pramil
Nie ma zestawu SDK 3.1.2, obecnie jest to tylko środowisko wykonawcze w tej wersji. Najnowszy zestaw SDK tego komentarza to 3.1.102.
CodeThief
Gdy próbuję użyć Use .NET Corezadania do zbudowania z wersją 3.1, zadanie to kończy się powodzeniem. Ale kiedy dostanie się do Build Solutionzadania, nadal nie widzi zestawu SDK 3.1 i kończy się niepowodzeniem.
Panzercrisis
7

Dodaj krok do zainstalowania zestawu .NET Core SDK przed wywołaniem kompilacji dotnet.

steps:
- task: UseDotNet@2
  displayName: 'Install .NET Core sdk'
  inputs:
    packageType: sdk
    version: 3.1.100
    installationPath: $(Agent.ToolsDirectory)/dotnet

Praca i weryfikacja z ubuntu-latest.

Bernard Vander Beken
źródło
1
Mam zadanie instalacji .NET Core SDK 3.1 (kopiuję / wklejam twój kod) i zwraca: „Pomyślnie zainstalowano NET Core 3.1.100 SDK”. Następne zadanie (zależy od pierwszego) nadal korzysta z zestawu SDK 3.0.xx i kończy się niepowodzeniem. alex75.visualstudio.com/Cryptocurrencies/_build/…
Alex 75
2
To całkowicie naprawiło mój problem i pozwoliło mi pozostać ubuntu-latest.
JamesQMurphy
1
@ Alex75 Ten sam problem tutaj, wydaje się po prostu zignorować zadanie UseDotNet @ 2 i używa 3.0 SDK, dziwne ...
jjxtra
Dziwne, nie mam pojęcia, dlaczego to działa dla niektórych osób (w tym dla mnie), a nie dla innych.
Bernard Vander Beken
0

Jeśli używasz obrazu „Windows-najnowsze”, powinieneś być w stanie używać poleceń dotnet. Zmieniłem go z „Ubuntu-latest” na „Windows-najnowsze” i działało dobrze.

John Kesinger
źródło