Compartir por


MSBuild respeta DOTNET_CLI_UI_LANGUAGE

MSBuild ahora respeta la DOTNET_CLI_UI_LANGUAGE variable de entorno 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

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

Nuevo comportamiento

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

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

Versión introducida

.NET 8 (versión preliminar 5)

Tipo de cambio disruptivo

Este es un cambio de comportamiento.

Motivo del cambio

Anteriormente, la salida de comandos como dotnet build era una mezcla del idioma de DOTNET_CLI_UI_LANGUAGE (para la salida del SDK de .NET) y el idioma 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 la salida de MSBuild son coherentes.

Si desea mantener el comportamiento anterior, desconjunte 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).