Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Esta advertencia indica que el SDK de .NET que se usa para compilar el proyecto está al final del ciclo de vida (EOL) y que ya no recibe actualizaciones de seguridad. El mensaje de advertencia completo es similar al ejemplo siguiente:
NETSDK1239: El SDK de .NET actual (<version>) ha llegado al fin de su vida útil desde <date>. No recibirá más actualizaciones de seguridad: https://dotnet.microsoft.com/download
Para resolver la advertencia, instale un SDK de .NET compatible desde https://dotnet.microsoft.com/download y actualice la global.json (si está presente) para seleccionar la nueva versión. Para obtener la escala de tiempo de soporte técnico actual, consulte .NET versiones y soporte técnico.
Esta advertencia es distinta de NETSDK1138, que se genera cuando la plataforma de destino del proyecto no es compatible. NETSDK1239 se genera cuando el SDK que ejecuta la compilación no es compatible, independientemente de la plataforma de destino.
Cómo funciona la comprobación
La comprobación es opcional y solo se ejecuta cuando la propiedad de MSBuild CheckSdkVulnerabilities se establece en true:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<CheckSdkVulnerabilities>true</CheckSdkVulnerabilities>
</PropertyGroup>
</Project>
También puede pasar /p:CheckSdkVulnerabilities=true a un comando de la CLI de .NET, como dotnet build.
De forma predeterminada, la CLI de .NET actualiza una caché local de metadatos de versión del SDK en segundo plano como máximo cada 24 horas en ~/.dotnet/sdk-vulnerability-cache/. Configure DOTNET_SDK_VULNERABILITY_CHECK_INTERVAL_HOURS para cambiar el intervalo de actualización. La comprobación de MSBuild solo lee esa memoria caché; no realiza llamadas de red durante la compilación.
Supresión de la advertencia
Para suprimir la advertencia sin actualizar el SDK:
Agregue
NETSDK1239aNoWarn:<NoWarn>$(NoWarn);NETSDK1239</NoWarn>Establezca
CheckSdkVulnerabilitiesenfalse(valor predeterminado) para desactivar NETSDK1238, NETSDK1239 y NETSDK1240.Establezca la variable de entorno
DOTNET_SDK_VULNERABILITY_CHECK_DISABLEentrue.