NETSDK1240: 현재 .NET SDK 기능 밴드가 중단됨

이 경고는 최신 SDK가 동일한 주 버전의 다른 기능 밴드에 있더라도 프로젝트를 빌드하는 데 사용되는 .NET SDK의 기능 밴드에 최신 릴리스가 없음을 나타냅니다. 전체 경고 메시지는 다음 예제와 유사합니다.

NETSDK1240: 현재 .NET SDK(<version>)는 기능 대역에서 최신 릴리스가 없습니다. 버전 <으로> 업데이트: https://dotnet.microsoft.com/download

.NET SDK 버전에는 <major>.<minor>.<feature-band><patch> 형식이 있습니다(예: 8.0.404, 여기서 4xx 기능 밴드). 권장 서비스 경로가 다른 기능 밴드로 이동하면 이전 밴드가 업데이트 수신을 중지합니다. 경고를 해결하려면 https://dotnet.microsoft.com/download 권장 .NET SDK 버전을 설치하고 global.json(있는 경우)를 업데이트하여 선택합니다.

검사 작동 방식

이 검사는 선택 사항이며 MSBuild 속성 CheckSdkVulnerabilitiestrue로 설정된 경우에만 실행됩니다:

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

/p:CheckSdkVulnerabilities=true .NET CLI 명령(예: dotnet build)에 전달할 수도 있습니다.

.NET CLI는 ~/.dotnet/sdk-vulnerability-cache/ 아래의 백그라운드에서 SDK 릴리스 메타데이터의 로컬 캐시를 새로 고칩니다. 기본적으로 24시간마다 최대 한 번 캐시를 새로 고칩니다. 해당 간격을 변경하려면 .를 설정합니다 DOTNET_SDK_VULNERABILITY_CHECK_INTERVAL_HOURS. MSBuild 검사는 해당 캐시만 읽습니다. 빌드하는 동안에는 네트워크 호출을 수행하지 않습니다.

경고 표시 안 함

SDK를 업데이트하지 않고 경고를 표시하지 않는 경우:

  • NoWarnNETSDK1240 추가:

    <NoWarn>$(NoWarn);NETSDK1240</NoWarn>
    
  • CheckSdkVulnerabilities NETSDK1238, NETSDK1239 및 NETSDK1240 끄려면 (기본값)으로 설정합니다false.

  • 환경 변수를 DOTNET_SDK_VULNERABILITY_CHECK_DISABLE .로 true설정합니다.

참고하십시오