NETSDK1239: Aktuální .NET SDK je konec životnosti

Toto upozornění značí, že sada .NET SDK použitá k sestavení projektu je konec životnosti (EOL) a už nepřijímá aktualizace zabezpečení. Úplná zpráva s upozorněním je podobná následujícímu příkladu:

NETSDK1239: Aktuální sada SDK .NET (<version>) byla ukončena k <date>. Nebude dostávat žádné další aktualizace zabezpečení: https://dotnet.microsoft.com/download

Pokud chcete upozornění vyřešit, nainstalujte z https://dotnet.microsoft.com/download podporovanou sadu SDK .NET a aktualizujte global.json (pokud je k dispozici) a vyberte novou verzi. Aktuální harmonogram podpory najdete v článku Verze .NET a podpora.

Toto upozornění se liší od NETSDK1138, což se vyvolá, když cílová architektura projektu není podporována. K chybě NETSDK1239 dojde, když sada SDK, která spouští sestavení, již není podporována, bez ohledu na to, na který framework cílíte.

Jak kontrola funguje

Kontrola je volitelná a spustí se pouze tehdy, když je vlastnost MSBuild CheckSdkVulnerabilities nastavena na true:

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

Můžete také předat /p:CheckSdkVulnerabilities=true do příkazu rozhraní příkazového řádku .NET, například dotnet build.

Rozhraní příkazového řádku .NET ve výchozím nastavení aktualizuje místní mezipaměť metadat vydaných verzí sady SDK na pozadí maximálně jednou za 24 hodin pod ~/.dotnet/sdk-vulnerability-cache/. Nastavte DOTNET_SDK_VULNERABILITY_CHECK_INTERVAL_HOURS pro změnu intervalu aktualizace. Nástroj MSBuild kontroluje pouze čtení této mezipaměti; během sestavování neprovádí síťová volání.

Potlačení upozornění

Potlačení upozornění bez aktualizace sady SDK:

  • Přidat NETSDK1239 k NoWarn:

    <NoWarn>$(NoWarn);NETSDK1239</NoWarn>
    
  • Nastavte CheckSdkVulnerabilities na false (výchozí) a vypněte NETSDK1238, NETSDK1239 a NETSDK1240.

  • Nastavte proměnnou DOTNET_SDK_VULNERABILITY_CHECK_DISABLE prostředí na truehodnotu .

Viz také