NETSDK1240: Geçerli .NET SDK özellik bandı sonlandırıldı

Bu uyarı, projenizi derlemek için kullanılan .NET SDK'sının özellik bandının, aynı ana sürümde farklı bir özellik bandında daha yeni bir SDK olsa bile daha yeni bir sürüme sahip olmadığını gösterir. Tam uyarı iletisi aşağıdaki örneğe benzer:

NETSDK1240: Geçerli .NET SDK'sı (<version>) özellik bandında daha yeni bir sürüme sahip değildir. <sürüm> sürümüne güncelleştirin: https://dotnet.microsoft.com/download

.NET SDK sürümü <major>.<minor>.<feature-band><patch> biçimindedir (örneğin, 8.0.404; burada 4xx özellik bandıdır). Önerilen hizmet yolu farklı bir özellik bandına geçtiğinde, eski bant güncelleştirmeleri almayı durdurur. Uyarıyı gidermek için https://dotnet.microsoft.com/download konumundan önerilen .NET SDK sürümünü yükleyin ve global.json öğesini (varsa) bu sürümü seçecek şekilde güncelleştirin.

Denetim nasıl çalışır

Denetim isteğe bağlıdır ve yalnızca MSBuild özelliği CheckSdkVulnerabilities, true olarak ayarlandığında çalışır:

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

/p:CheckSdkVulnerabilities=true dotnet build gibi bir .NET CLI komutuna da geçirebilirsiniz.

.NET CLI, ~/.dotnet/sdk-vulnerability-cache/ altında arka planda SDK yayın meta verilerinin yerel önbelleğini yeniler. Varsayılan olarak, önbelleği en fazla 24 saatte bir yeniler. Bu aralığı değiştirmek için değerini ayarlayın DOTNET_SDK_VULNERABILITY_CHECK_INTERVAL_HOURS. MSBuild denetimi yalnızca bu önbelleği okur; derleme sırasında ağ çağrıları yapmaz.

Uyarıyı gizleme

SDK'yi güncelleştirmeden uyarıyı bastırmak için:

  • NETSDK1240 öğesini NoWarn öğesine ekleyin:

    <NoWarn>$(NoWarn);NETSDK1240</NoWarn>
    
  • CheckSdkVulnerabilities öğesini, NETSDK1238, NETSDK1239 ve NETSDK1240'ı devre dışı bırakmak için false (varsayılan) olarak ayarlayın.

  • Ortam değişkenini DOTNET_SDK_VULNERABILITY_CHECK_DISABLE olarak trueayarlayın.

Ayrıca bakınız