Freigeben über


dotnet clean

Dieser Artikel gilt für: ✔️ .NET 6 SDK und höhere Versionen

Name

dotnet clean - Bereinigt die Ausgabe eines Projekts.

Zusammenfassung

dotnet clean [<PROJECT>|<SOLUTION>|<FILE>] [--artifacts-path <ARTIFACTS_DIR>]
    [-c|--configuration <CONFIGURATION>]
    [-f|--framework <FRAMEWORK>] [--interactive]
    [--nologo] [-o|--output <OUTPUT_DIRECTORY>]
    [-r|--runtime <RUNTIME_IDENTIFIER>] [--tl:[auto|on|off]]
    [-v|--verbosity <LEVEL>]

dotnet clean -h|--help

Description

Der dotnet clean Befehl bereinigt die Ausgabe des vorherigen Builds. Es wird als MSBuild-Ziel implementiert, sodass das Projekt ausgewertet wird, wenn der Befehl ausgeführt wird. Nur die ausgaben, die während des Builds erstellt wurden, werden bereinigt. Sowohl Zwischenordner (obj) als auch endgültige Ausgabeordner (Bin) werden bereinigt.

Arguments

PROJECT | SOLUTION | FILE

Die Projekt- oder Projektmappendatei oder C#-Datei (dateibasierte App), die ausgeführt werden soll. Wenn keine Datei angegeben ist, durchsucht MSBuild das aktuelle Verzeichnis für ein Projekt oder eine Projektmappe.

  • PROJECT ist der Pfad und Dateiname einer C#-, F#- oder Visual Basic-Projektdatei oder der Pfad zu einem Verzeichnis, das eine C#-, F#- oder Visual Basic-Projektdatei enthält.

  • SOLUTION ist der Pfad und Dateiname einer Lösungsdatei (.sln oder SLNX Erweiterung) oder der Pfad zu einem Verzeichnis, das eine Lösungsdatei enthält.

  • FILE ist ein In .NET 10 hinzugefügtes Argument. Der Pfad und Dateiname einer dateibasierten App. Dateibasierte Apps sind in einer einzelnen Datei enthalten, die ohne eine entsprechende Projektdatei (CSPROJ) erstellt und ausgeführt wird. Weitere Informationen finden Sie unter Erstellen dateibasierter C#-Apps.

Options

  • --artifacts-path <ARTIFACTS_DIR>

    Alle Buildausgabedateien des ausgeführten Befehls werden in Unterordnern unter dem angegebenen Pfad, getrennt durch Das Projekt, verschoben. Weitere Informationen finden Sie unter "Artifacts Output Layout". Verfügbar seit .NET 8 SDK.

  • -c|--configuration <CONFIGURATION>

    Definiert die Buildkonfiguration. Die Standardeinstellung für die meisten Projekte ist Debug, Aber Sie können die Buildkonfigurationseinstellungen in Ihrem Projekt außer Kraft setzen. Diese Option ist nur bei der Reinigung erforderlich, wenn Sie sie während der Buildzeit angegeben haben.

  • -f|--framework <FRAMEWORK>

    Das Framework , das zur Buildzeit angegeben wurde. Das Framework muss in der Projektdatei definiert werden. Wenn Sie das Framework zur Erstellungszeit angegeben haben, müssen Sie das Framework beim Bereinigen angeben.

  • -?|-h|--help

    Gibt eine Beschreibung zur Verwendung des Befehls aus.

  • --interactive

    Ermöglicht es dem Befehl, die Benutzereingabe oder -aktion zu beenden und zu warten. Um beispielsweise die Authentifizierung abzuschließen. Verfügbar seit .NET Core 3.0 SDK.

  • --nologo

    Zeigt das Startbanner oder die Copyrightnachricht nicht an.

  • -o|--output <OUTPUT_DIRECTORY>

    Das Verzeichnis, das die zu bereinigenden Buildartefakte enthält. Geben Sie den -f|--framework <FRAMEWORK> Switch mit dem Ausgabeverzeichniswechsel an, wenn Sie das Framework beim Erstellen des Projekts angegeben haben.

    • .NET 7.0.200 SDK und höher

      Wenn Sie die --output Option angeben, wenn Sie diesen Befehl auf einer Lösung ausführen, gibt die CLI aufgrund der unklaren Semantik des Ausgabepfads eine Warnung (ein Fehler in 7.0.200) aus. Die --output Option ist unzulässig, da alle Ausgaben aller integrierten Projekte in das angegebene Verzeichnis kopiert werden, das nicht mit multizielorientierten Projekten kompatibel ist, sowie Projekte mit unterschiedlichen Versionen von direkten und transitiven Abhängigkeiten. Weitere Informationen finden Sie unter Option auf Lösungsebene --output , die für buildbezogene Befehle nicht mehr gültig ist.

  • -r|--runtime <RUNTIME_IDENTIFIER>

    Bereinigt den Ausgabeordner der angegebenen Laufzeit. Dies wird verwendet, wenn eine eigenständige Bereitstellung erstellt wurde.

  • --tl:[auto|on|off]

    Gibt an, ob terminal logger für die Buildausgabe verwendet werden soll. Der Standardwert ist auto, der zuerst die Umgebung überprüft, bevor die Terminalprotokollierung aktiviert wird. Die Umgebung überprüft, ob das Terminal moderne Ausgabefeatures verwenden kann und keine umgeleitete Standardausgabe verwendet, bevor der neue Logger aktiviert wird. on überspringt die Umgebungsüberprüfung und aktiviert die Terminalprotokollierung. off überspringt die Umgebungsprüfung und verwendet den Standardkonsolenprotokollierer.

    Terminal Logger zeigt Ihnen die Wiederherstellungsphase gefolgt von der Buildphase. In jeder Phase werden die derzeit bauende Projekte am Unteren Ende des Terminals angezeigt. Jedes Projekt, das erstellt wird, gibt sowohl das msBuild-Ziel aus, das derzeit erstellt wird, als auch die für dieses Ziel aufgewendete Zeit. Sie können diese Informationen durchsuchen, um mehr über den Build zu erfahren. Wenn das Erstellen eines Projekts abgeschlossen ist, wird ein einzelner Abschnitt "Build abgeschlossen" geschrieben, der folgendes erfasst:

    • Der Name des erstellten Projekts.
    • Das Zielframework (wenn multi-targeted).
    • Der Status dieses Builds.
    • Die primäre Ausgabe dieses Builds (die mit Hyperlink versehen ist).
    • Jede für dieses Projekt generierte Diagnose.

    Diese Option ist ab .NET 8 verfügbar.

  • -v|--verbosity <LEVEL>

    Legt den Ausführlichkeitsgrad für den Befehl fest. Zulässige Werte sind q[uiet], m[inimal], n[ormal], d[etailed] und diag[nostic]. Der Standardwert lautet normal. Weitere Informationen finden Sie unter LoggerVerbosity.

Examples

  • Bereinigen Sie einen Standardbuild des Projekts:

    dotnet clean
    
  • Bereinigen eines dateibasierten Programms:

    dotnet clean Program.cs.
    

    Dateibasierte App-Unterstützung wurde im .NET SDK 10.0.100 hinzugefügt.

  • Bereinigen Sie ein Projekt, das mit der Release-Konfiguration erstellt wurde:

    dotnet clean --configuration Release