Jedes Mal, wenn ich ein Programm starte, scheint die Ausgabe des vorherigen Laufs eines anderen Programms von der neuen Ausgabe überschrieben zu werden. Gibt es eine Möglichkeit, die Ausgabe von zuvor ausgeführten Programmen zu sehen?
Es gibt kein. In der Run / Debug-Konfiguration können Sie auf der Registerkarte "Protokoll" die Option "Konsolenausgabe in Datei speichern" aktivieren. (Sie können dies unter der "Defaults" -Konfiguration einstellen, so dass es immer dort ist. Das gilt jedoch nur für das aktuelle Projekt. Um auch für alle zukünftigen Projekte als Standard festzulegen, vom Begrüßungsbildschirm aus (dh alle Projekte schließen) gehe zu Konfiguriere & gt; Projekt-Standardeinstellungen & gt; Konfigurationen ausführen ) Leider wird diese Ausgabedatei bei jedem neuen Lauf (auch) überschrieben. Soweit ich weiß, gibt es keine Möglichkeit, dem Dateinamen einen Zeitstempel hinzuzufügen. Sie können eine Feature-Anforderung öffnen und sie auffordern, die letzte x Anzahl von Läufen beizubehalten oder einen Zeitstempel zuzulassen.
In der Zwischenzeit gibt es zwei Optionen, die Sie für eine Problemumgehung verwenden können.
Option 1 - Protokollierungs-Framework
Die erste Option besteht darin, ein Protokollierungsframework zu verwenden. Dies beinhaltet nicht die Start-Informationen oder System.out / err, die die Konsole hat (es sei denn, Sie verwenden etwas wie sysout- over-slf4j ). Auf derselben Registerkarte "Protokolle" in der Run / Debug-Konfiguration können Sie festlegen, dass die Protokolldatei im Konsolenwerkzeugfenster angezeigt wird. Das Schöne ist, dass IntelliJ IDEA nur neue Ausgaben für diesen Lauf anzeigt. Aber die Ausgabe von vorherigen Läufen befindet sich immer noch in der Protokolldatei (vorausgesetzt, Ihr Logger ist so eingerichtet, dass er an neue Läufe angefügt und nicht überschrieben wird). Wenn Sie den Protokollnamen angeben, können Sie Wild-Zeichen verwenden (um sich mit Dingen wie einem Datumsstempel im Protokoll zu befassen). Es verwendet Ant-Dateisatz-Musternotation. Klicken Sie auf die Hilfeschaltfläche im Dialogfeld "Protokolldateien-Aliase bearbeiten", um weitere Informationen zu erhalten. Standardmäßig zeigt IDEA nur das neueste Protokoll an, es sei denn, Sie wählen die Option "Alle nach Muster abbildbaren Dateien anzeigen" in "Aliasnamen der Protokolldateien bearbeiten".
Option 2 - Verwenden Sie ein Skript
Eine andere Option wäre die Verwendung der Option "Konsolendateiausgabe in Datei speichern". Schreiben Sie dann ein externes Skript oder eine Ant-Task, die diese Ausgabe verschiebt / umbenennt. (Sie könnten es so aussehen lassen, dass es nur die letzten x Läufe speichert und die vorherigen Namen rollt.) Verwenden Sie dann in der run / debug-Konfiguration entweder die Option "Externes Werkzeug ausführen" oder "Ant-Ziel ausführen" im "Vor dem Start "Abschnitt zum Ausführen Ihres Skripts. (Wiederum können Sie dies auf die Standardkonfigurationen einstellen, so dass es automatisch dort ist.) Auf diese Weise wird Ihr Skript ausgeführt, wobei die Datei umbenannt wird, bevor die neue Ausgabe erstellt wird und die alte überschrieben wird.
Tags und Links intellij-idea