Compartilhar via


O MSBuild respeita DOTNET_CLI_UI_LANGUAGE

MSBuild agora respeita a variável de ambiente DOTNET_CLI_UI_LANGUAGE e usa o idioma especificado por DOTNET_CLI_UI_LANGUAGE em sua saída de linha de comando. Essa alteração afeta a saída dos comandos msbuild.exe, dotnet build e dotnet msbuild.

Comportamento anterior

Anteriormente, a saída da linha de comando do MSBuild estava sempre na linguagem do sistema operacional (SO) e usava sua própria codificação, independentemente de DOTNET_CLI_UI_LANGUAGE.

Novo comportamento

O MSBuild usa o idioma especificado por DOTNET_CLI_UI_LANGUAGE em vez do idioma do sistema operacional para sua saída de linha de comando.

No Windows, a saída do MSBuild usa a codificação UTF-8 agora se DOTNET_CLI_UI_LANGUAGE estiver definida e o UTF-8 tiver suporte.

Versão introduzida

.NET 8 versão prévia 5

Tipo de mudança disruptiva

Esta é uma alteração comportamental.

Motivo da alteração

Anteriormente, a saída de comandos como dotnet build era uma mistura da DOTNET_CLI_UI_LANGUAGE linguagem (para saída do SDK do .NET) e da linguagem do sistema operacional (para saída do MSBuild). Por exemplo, a saída "Compilação bem-sucedida/com falha" usou a linguagem do sistema operacional. Com essa alteração, o idioma do SDK do .NET e da saída do MSBuild é consistente.

Se você quiser manter o comportamento antigo, desvinque DOTNET_CLI_UI_LANGUAGE usando o comando set DOTNET_CLI_UI_LANGUAGE= (ou um comando semelhante para o shell para alterar variáveis de ambiente).