Dela via


NETSDK1045: Den aktuella .NET SDK stöder inte "nyare version" som mål.

Den här artikeln gäller för: ✔️ .NET Core 2.1.100 SDK och senare versioner

Det här felet uppstår när byggverktygen inte hittar den version av .NET SDK som behövs för att skapa ett projekt. Detta beror vanligtvis på ett .NET SDK-installation eller konfigurationsproblem. Det fullständiga felmeddelandet liknar följande exempel:

NETSDK1045: Den aktuella .NET SDK stöder inte "nyare version" som mål. Ange antingen "äldre version" eller lägre eller använd en .NET SDK-version som stöder "nyare version".

I följande avsnitt beskrivs några av de möjliga orsakerna till det här felet. Kontrollera var och en och se vilken som gäller för dig. Tänk på att när du gör ändringar i miljön eller konfigurationsfilerna kan du behöva starta om kommandofönster, starta om Visual Studio eller starta om datorn för att ändringarna ska börja gälla.

.NET SDK-version

Öppna projektfilen (.csproj, .vbproj eller .fsproj) och kontrollera målramverket. Det här är den version av ramverket som din app försöker använda.

<TargetFramework>netcoreapp3.0</TargetFramework>

Kontrollera att den version av .NET som anges är installerad på datorn. Du kan lista de installerade versionerna med hjälp av följande kommando (öppna en kommandotolk för utvecklare och kör det här kommandot):

dotnet --list-sdks

x86- eller x64-arkitektur

Varje version av .NET SDK är tillgänglig i både x86- och x64-arkitekturen. Projektet kanske försöker hitta .NET SDK för fel arkitektur, eller så kanske inte .NET SDK för den arkitektur som projektet behöver installeras. Kontrollera installationsmapparna för den arkitektur du behöver. I Windows installeras till exempel x86-versionen av .NET SDK i C:\Program Files (x86)\dotnet och x64-versionen är installerad i C:\Program Files\dotnet. Se Så här kontrollerar du att .NET redan är installerat och väljer ditt operativsystem för att ta reda på hur du identifierar vad som är installerat på datorn.

Om den version du behöver inte är installerad hittar du den du behöver på sidan .NET-nedladdningar .

Visual Studio-version

.NET SDK kan ha installerats med Visual Studio 2022, så uppgradering till en senare version av Visual Studio kan installera en senare .NET SDK och lösa det här felet. Mer information finns i Uppdatera Visual Studio.

Förhandsversionen är inte aktiverad

Om du har en förhandsversion installerad av den begärda .NET SDK-versionen måste du också ange alternativet för att aktivera förhandsversioner i Visual Studio. Gå till Verktygsalternativ>>Miljöförhandsgranskningsfunktioner> och kontrollera att Använd förhandsversioner av .NET Core SDK är markerat.

Visual Studio-version

Till exempel kräver .NET Core 3.0 och senare Visual Studio 2019. Uppgradera till Visual Studio 2019 version 16.3 eller senare för att skapa projektet.

PATH-miljövariabel

Byggverktygen använder path-miljövariabeln för att hitta rätt version av .NET-byggverktygen. Om path-miljövariabeln innehåller direkta sökvägar till äldre byggverktyg kan det här felmeddelandet visas. Kontrollera att den enda sökvägen till .NET-verktygen i PATH-miljövariabeln är till mappen dotnet på den översta nivån, till exempel C:\Program Files\dotnet. Ett exempel på en felaktig SÖKVÄG skulle vara ungefär som C:\Program Files\dotnet\2.1.0\sdks.

MILJÖvariabeln MSBuildSDKPath

Kontrollera miljövariabeln MSBuildSDKPath. Den här valfria miljövariabeln identifieras av MSBuild och åsidosätter standardvärdet om den anges. Den kan vara inställd på en specifik äldre version av .NET SDK. Om den har angetts kan du prova att ta bort den och återskapa projektet.

global.json fil

Sök efter en global.json fil i rotmappen i projektet och i din lösning och upp katalogkedjan till volymens rot eftersom den kan finnas var som helst i mappstrukturen. Om den innehåller en SDK-version tar du bort sdk noden och alla dess underordnade objekt eller uppdaterar den till önskad nyare .NET Core-version.

{
  "sdk": {
    "version": "2.1.0"
  }
}

Den global.json filen krävs inte, så om den sdk inte innehåller något annat än noden kan du ta bort hela filen.

Directory.build.props-fil

Filen Directory.build.props är en valfri MSBuild-fil som kan ange globala egenskaper. Sök efter dessa filer i lösningsmappen och upp i katalogkedjan till volymens rot eftersom de kan finnas var som helst i mappstrukturen. TargetFramework Leta efter element eller inställningar för MSBuildSDKPath som kan åsidosätta önskade inställningar.

Se även