NETSDK1239: Das aktuelle .NET SDK hat das Ende des Lebenszyklus erreicht.

Diese Warnung weist darauf hin, dass das zum Erstellen Ihres Projekts verwendete .NET SDK das Ende des Lebenszyklus (EOL) erreicht hat und keine Sicherheitsupdates mehr erhält. Die vollständige Warnmeldung ähnelt dem folgenden Beispiel:

NETSDK1239: Das aktuelle .NET SDK (<version>) endet ab <date>. Es erhält keine weiteren Sicherheitsupdates: https://dotnet.microsoft.com/download

Um die Warnung zu beheben, installieren Sie ein unterstütztes .NET SDK aus https://dotnet.microsoft.com/download, und aktualisieren Sie Ihre global.json (sofern vorhanden), um die neue Version auszuwählen. Den aktuellen Supportlebenszyklus finden Sie unter .NET-Versionen und Support.

Diese Warnung unterscheidet sich von NETSDK1138, die ausgelöst wird, wenn das Zielframework Ihres Projekts nicht unterstützt wird. NETSDK1239 wird ausgelöst, wenn das SDK, das den Build ausführt , nicht unterstützt wird, unabhängig davon, welches Framework Sie verwenden.

So funktioniert die Prüfung

Die Überprüfung ist optional und wird nur ausgeführt, wenn die MSBuild-Eigenschaft CheckSdkVulnerabilities auf true festgelegt ist:

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <CheckSdkVulnerabilities>true</CheckSdkVulnerabilities>
  </PropertyGroup>
</Project>

Sie können auch /p:CheckSdkVulnerabilities=true an einen .NET CLI-Befehl übergeben, z. B. dotnet build.

Standardmäßig aktualisiert die .NET CLI einen lokalen Cache der SDK-Releasemetadaten im Hintergrund alle 24 Stunden unter ~/.dotnet/sdk-vulnerability-cache/. Legen Sie DOTNET_SDK_VULNERABILITY_CHECK_INTERVAL_HOURS fest, um das Aktualisierungsintervall zu ändern. Die MSBuild-Überprüfung liest nur diesen Cache; während des Builds werden keine Netzwerkanrufe getätigt.

Unterdrücken der Warnung

So unterdrücken Sie die Warnung, ohne das SDK zu aktualisieren:

  • NETSDK1239 zu NoWarn hinzufügen:

    <NoWarn>$(NoWarn);NETSDK1239</NoWarn>
    
  • Legen Sie CheckSdkVulnerabilities auf false (Standardeinstellung) fest, um NETSDK1238, NETSDK1239 und NETSDK1240 zu deaktivieren.

  • Legen Sie die Umgebungsvariable DOTNET_SDK_VULNERABILITY_CHECK_DISABLE auf true.

Siehe auch