Comparteix a través de


MSBuild respeta DOTNET_CLI_UI_LANGUAGE

MSBuild ahora respeta la variable de entorno DOTNET_CLI_UI_LANGUAGE y usa el lenguaje especificado por DOTNET_CLI_UI_LANGUAGE para la salida de la línea de comandos. Este cambio afecta a la salida de los comandos msbuild.exe, dotnet build y dotnet msbuild.

Comportamiento anterior

Antes, la salida de la línea de comandos de MSBuild siempre estaba en el lenguaje del sistema operativo y usaba su propia codificación, independientemente de DOTNET_CLI_UI_LANGUAGE.

Comportamiento nuevo

MSBuild usa el lenguaje especificado por DOTNET_CLI_UI_LANGUAGE en lugar del lenguaje del sistema operativo para la salida de la línea de comandos.

En Windows, la salida de MSBuild ahora usa la codificación UTF-8 si se ha establecido DOTNET_CLI_UI_LANGUAGE y si se admite UTF-8.

Versión introducida

.NET 8 (versión preliminar 5)

Tipo de cambio importante

Este es un cambio de comportamiento.

Motivo del cambio

Antes, la salida de comandos como dotnet build era una combinación del lenguaje de DOTNET_CLI_UI_LANGUAGE (para la salida del SDK de .NET) y el lenguaje del sistema operativo (para la salida de MSBuild). Por ejemplo, la salida "Compilación correcta/Error al compilar" usaba el lenguaje del sistema operativo. Con este cambio, el lenguaje del SDK de .NET y de la salida de MSBuild es coherente.

Si quiere mantener el comportamiento anterior, anule DOTNET_CLI_UI_LANGUAGE mediante el comando set DOTNET_CLI_UI_LANGUAGE= (o un comando similar para que el shell cambie las variables de entorno).