Freigeben über


Terminal logger ist Standard

Terminal Logger ist jetzt standardmäßig für alle "interaktiven" Terminalsitzungen aktiviert. Terminal Logger formatiert die Konsolenausgabe für Builds anders als der Konsolenlogger. Weitere Informationen zu Terminal Logger finden Sie unter "dotnet build"-Optionen, insbesondere in der --tl Option.

Vorheriges Verhalten

dotnet build und andere buildbezogene CLI-Befehle verwendeten standardmäßig die MSBuild-Konsolenprotokollierung mit minimaler Ausführlichkeit für benutzergesteuerte Builds.

Neues Verhalten

Wenn das Terminal verschiedene Layout- und Farbfunktionen unterstützt, dotnet build und andere buildbezogene CLI-Befehle verwenden Terminal Logger standardmäßig für vom Benutzer ausgelöste Builds. Wenn der Befehl Teil eines Shellskripts ist oder eine Eingabe oder Ausgabe in irgendeiner Weise umgeleitet wurde oder wenn das Terminal einige der erweiterten Layoutfeatures, die Terminal logger hat, nicht unterstützt, wird terminal logger nicht verwendet.

Eingeführte Version

.NET 9 Preview 1

Art der einschneidenden Änderung

Diese Änderung ist eine Verhaltensänderung.

Grund für Änderung

Die Terminal Logger-Ausgabe bezüglich des Build-Fortschritts ist informationreicher und verwertbarer als die Konsolenausgabe. Das MSBuild-Team möchte die Verwendung von Terminal Logger frühzeitig im .NET 9-Releasezyklus fördern, sodass Es Zeit gibt, Feedback zur Qualität und Funktionalität des Features zu sammeln.

Wenn Sie zum Konsolenlogger zurückkehren müssen, können Sie terminal logger auf folgende Weise deaktivieren:

  • Um terminal logger für einen bestimmten Befehl zu deaktivieren, geben Sie --tl:off in der Befehlszeile oder über eine MSBuild-Antwortdatei an.
  • Um terminal logger für alle Befehle zu deaktivieren, legen Sie die MSBUILDTERMINALLOGGER Umgebungsvariable auf off.

Betroffene APIs

Nicht verfügbar

Siehe auch