NETSDK1240: Band fitur SDK .NET saat ini tidak lagi didukung

Peringatan ini menunjukkan bahwa pita fitur SDK .NET yang digunakan untuk membangun proyek Anda tidak memiliki rilis yang lebih baru, meskipun SDK yang lebih baru ada di pita fitur yang berbeda pada versi utama yang sama. Pesan peringatan lengkap mirip dengan contoh berikut:

NETSDK1240: SDK .NET saat ini (<version>) tidak memiliki rilis yang lebih baru dalam band fiturnya. Perbarui ke versi< versi>:https://dotnet.microsoft.com/download

Versi SDK .NET berbentuk <major>.<minor>.<feature-band><patch> (misalnya, 8.0.404, dengan 4xx sebagai kelompok fitur). Ketika jalur layanan yang direkomendasikan berpindah ke pita fitur yang berbeda, band yang lebih lama berhenti menerima pembaruan. Untuk mengatasi peringatan, instal versi .NET SDK yang direkomendasikan dari https://dotnet.microsoft.com/download dan perbarui global.json (jika ada) untuk memilihnya.

Cara kerja pemeriksaan

Pemeriksaan ini bersifat opt-in dan hanya dijalankan ketika properti MSBuild CheckSdkVulnerabilities diatur ke true:

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

Anda juga dapat meneruskan /p:CheckSdkVulnerabilities=true ke perintah CLI .NET, seperti dotnet build.

CLI .NET memperbarui cache lokal metadata rilis SDK di latar belakang pada lokasi ~/.dotnet/sdk-vulnerability-cache/. Secara default, cache di-refresh paling banyak setiap 24 jam sekali. Untuk mengubah interval tersebut, atur DOTNET_SDK_VULNERABILITY_CHECK_INTERVAL_HOURS. Pemeriksaan MSBuild hanya membaca cache tersebut; tidak melakukan panggilan jaringan selama build.

Menyembunyikan peringatan

Untuk menekan peringatan tanpa memperbarui SDK:

  • Tambahkan NETSDK1240 ke NoWarn:

    <NoWarn>$(NoWarn);NETSDK1240</NoWarn>
    
  • Atur CheckSdkVulnerabilities ke false (default) untuk menonaktifkan NETSDK1238, NETSDK1239, dan NETSDK1240.

  • Atur DOTNET_SDK_VULNERABILITY_CHECK_DISABLE variabel lingkungan ke true.

Baca juga