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 la banda de características del SDK de .NET que se usa para compilar el proyecto no tiene ninguna versión más reciente, aunque exista un SDK más reciente en una banda de características diferente en la misma versión principal. El mensaje de advertencia completo es similar al ejemplo siguiente:
NETSDK1240: el SDK de .NET actual (<version>) no tiene ninguna versión más reciente en su banda de características. Actualizar a la versión <versión>: https://dotnet.microsoft.com/download
Una versión del SDK de .NET tiene el formato <major>.<minor>.<feature-band><patch> (por ejemplo, 8.0.404, donde 4xx es la banda de características). Cuando la ruta de mantenimiento recomendada se mueve a una banda de características diferente, la banda anterior deja de recibir actualizaciones. Para resolver la advertencia, instale la versión recomendada del SDK de .NET desde https://dotnet.microsoft.com/download y actualice la global.json (si está presente) para seleccionarla.
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.
La CLI de .NET actualiza una caché local de metadatos de versión del SDK en segundo plano en ~/.dotnet/sdk-vulnerability-cache/. De forma predeterminada, actualiza la memoria caché como máximo una vez cada 24 horas. Para cambiar ese intervalo, establezca DOTNET_SDK_VULNERABILITY_CHECK_INTERVAL_HOURS. 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
NETSDK1240aNoWarn:<NoWarn>$(NoWarn);NETSDK1240</NoWarn>Establezca
CheckSdkVulnerabilitiesenfalse(valor predeterminado) para desactivar NETSDK1238, NETSDK1239 y NETSDK1240.Establezca la variable de entorno
DOTNET_SDK_VULNERABILITY_CHECK_DISABLEentrue.