次の方法で共有


MSBuild は DOTNET_CLI_UI_LANGUAGE を尊重する

MSBuild では、 DOTNET_CLI_UI_LANGUAGE 環境変数が考慮され、コマンド ライン出力に DOTNET_CLI_UI_LANGUAGE で指定された言語が使用されるようになりました。 この変更は、 msbuild.exedotnet build、および dotnet msbuild コマンドの出力に影響します。

以前の動作

以前は、MSBuild コマンド ライン出力は常にオペレーティング システム (OS) 言語にあり、 DOTNET_CLI_UI_LANGUAGEに関係なく独自のエンコードを使用していました。

新しい動作

MSBuild では、コマンド ライン出力に OS 言語ではなく、 DOTNET_CLI_UI_LANGUAGE で指定された言語が使用されます。

Windows では、 DOTNET_CLI_UI_LANGUAGE が設定され、UTF-8 がサポートされている場合、MSBuild 出力で UTF-8 エンコードが使用されるようになりました。

導入されたバージョン

.NET 8 Preview 5

破壊的変更の種類

この変更は 動作の変更です。

変更の理由

以前は、 dotnet build などのコマンドからの出力は、 DOTNET_CLI_UI_LANGUAGE 言語 (.NET SDK 出力の場合) と OS 言語 (MSBuild 出力の場合) の組み合わせでした。 たとえば、"ビルド成功/失敗" 出力では OS 言語が使用されました。 この変更により、.NET SDK と MSBuild の出力の言語は一貫しています。

古い動作を維持する場合は、コマンド DOTNET_CLI_UI_LANGUAGE (またはシェルで環境変数を変更するための同様のコマンド) を使用して、set DOTNET_CLI_UI_LANGUAGE=の設定を解除します。