Freigeben über


Dotnet-Paketliste

Dieser Artikel gilt für: ✔️ .NET Core 3.1 SDK und höher

Name

dotnet package list – Listet die Paketverweise für ein Projekt oder eine Lösung auf.

Hinweis

Wenn Sie .NET 9 SDK oder früher verwenden, verwenden Sie stattdessen das Formular "verb first" (dotnet list package). Das Formular "Nomen first" wurde in .NET 10 eingeführt. Weitere Informationen finden Sie unter "Konsistentere Befehlsreihenfolge".

Zusammenfassung

dotnet package list [--config <SOURCE>]
    [--deprecated] [--project [<PROJECT>|<SOLUTION>]]
    [-f|--framework <FRAMEWORK>] [--highest-minor] [--highest-patch]
    [--include-prerelease] [--include-transitive] [--interactive]
    [--outdated] [--source <SOURCE>] [-v|--verbosity <LEVEL>]
    [--vulnerable]
    [--format <console|json>]
    [--output-version <VERSION>]

dotnet package list -h|--help

BESCHREIBUNG

Der Befehl dotnet package list bietet eine bequeme Option zum Auflisten aller NuGet-Paketverweise für ein bestimmtes Projekt oder eine Lösung. Sie müssen zuerst das Projekt erstellen, damit die ressourcen für diesen Befehl verarbeitet werden müssen. Das folgende Beispiel zeigt die Ausgabe des Befehls dotnet package list für das SentimentAnalysis Projekt:

Project 'SentimentAnalysis' has the following package references
   [netcoreapp2.1]:
   Top-level Package               Requested   Resolved
   > Microsoft.ML                  1.4.0       1.4.0
   > Microsoft.NETCore.App   (A)   [2.1.0, )   2.1.0

(A) : Auto-referenced package.

Die Spalte Angeforderte bezieht sich auf die in der Projektdatei angegebene Paketversion und kann ein Bereich sein. In der Spalte Aufgelöste listet die Aktuell verwendete Version des Projekts auf und ist immer ein einzelner Wert. Die Pakete, die eine (A) rechts neben ihren Namen anzeigen, stellen implizite Paketverweise dar, die von Ihren Projekteinstellungen abgeleitet werden (Sdk Typ oder <TargetFramework> oder <TargetFrameworks> Eigenschaft).

Verwenden Sie die Option --outdated, um herauszufinden, ob neuere Versionen der Pakete verfügbar sind, die Sie in Ihren Projekten verwenden. Standardmäßig listet --outdated die neuesten stabilen Pakete auf, es sei denn, die aufgelöste Version ist auch eine Vorabversion. Um Vorabversionen beim Auflisten neuerer Versionen einzuschließen, geben Sie auch die Option --include-prerelease an. Um ein Paket auf die neueste Version zu aktualisieren, verwenden Sie dotnet package add.

Das folgende Beispiel zeigt die Ausgabe des Befehls dotnet package list --outdated --include-prerelease für dasselbe Projekt wie im vorherigen Beispiel:

The following sources were used:
   https://api.nuget.org/v3/index.json
   C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\

Project `SentimentAnalysis` has the following updates to its packages
   [netcoreapp2.1]:
   Top-level Package      Requested   Resolved   Latest
   > Microsoft.ML         1.4.0       1.4.0      1.5.0-preview

Wenn Sie herausfinden müssen, ob Ihr Projekt transitive Abhängigkeiten aufweist, verwenden Sie die Option --include-transitive. Transitive Abhängigkeiten treten auf, wenn Sie ihrem Projekt ein Paket hinzufügen, das wiederum auf einem anderen Paket basiert. Das folgende Beispiel zeigt die Ausgabe aus der Ausführung des Befehls dotnet package list --include-transitive für das HelloPlugin- Projekt, das Pakete auf oberster Ebene und die Pakete anzeigt, von denen sie abhängig sind:

Project 'HelloPlugin' has the following package references
   [netcoreapp3.0]:
   Transitive Package      Resolved
   > PluginBase            1.0.0

Argumente

PROJECT | SOLUTION

Die Projekt- oder Lösungsdatei, die ausgeführt werden soll. Wenn nicht angegeben, durchsucht der Befehl das aktuelle Verzeichnis nach einem Verzeichnis. Wenn mehrere Lösungen oder Projekte gefunden werden, wird ein Fehler ausgelöst.

Optionen

  • --config <SOURCE>

    Die NuGet-Quellen, die beim Suchen nach neueren Paketen verwendet werden sollen. Erfordert die Option --outdated.

  • --deprecated

    Zeigt Pakete an, die veraltet sind.

  • -f|--framework <FRAMEWORK>

    Zeigt nur die Pakete an, die für das angegebene Zielframeworkgelten. Wenn Sie mehrere Frameworks angeben möchten, wiederholen Sie die Option mehrmals. Beispiel: --framework net6.0 --framework netstandard2.0. Die kurze Form der Option (-f) ist ab .NET 9 SDK verfügbar.

  • -?|-h|--help

    Gibt eine Beschreibung zur Verwendung des Befehls aus.

  • --highest-minor

    Berücksichtigt nur die Pakete mit einer übereinstimmenden Hauptversionsnummer bei der Suche nach neueren Paketen. Erfordert die Option --outdated oder --deprecated.

  • --highest-patch

    Berücksichtigt nur die Pakete mit übereinstimmenden Haupt- und Nebenversionsnummern bei der Suche nach neueren Paketen. Erfordert die Option --outdated oder --deprecated.

  • --include-prerelease

    Berücksichtigt Pakete mit Vorabversionen bei der Suche nach neueren Paketen. Erfordert die Option --outdated oder --deprecated.

  • --include-transitive

    Listet transitive Pakete zusätzlich zu den Paketen der obersten Ebene auf. Wenn Sie diese Option angeben, erhalten Sie eine Liste der Pakete, von denen die Pakete der obersten Ebene abhängen.

  • --interactive

    Ermöglicht dem Befehl, anzuhalten und auf Benutzereingaben oder Aktionen zu warten. Beispielsweise, um die Authentifizierung abzuschließen. Verfügbar seit .NET Core 3.0 SDK.

  • --outdated

    Listet Pakete auf, für die neuere Versionen verfügbar sind.

  • -s|--source <SOURCE>

    Die NuGet-Quellen, die beim Suchen nach neueren Paketen verwendet werden sollen. Erfordert die Option --outdated oder --deprecated.

  • -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 ist minimal. Weitere Informationen finden Sie unter LoggerVerbosity.

  • --vulnerable

    Listet Pakete auf, die bekannte Sicherheitsrisiken aufweisen. Kann nicht mit --deprecated- oder --outdated-Optionen kombiniert werden. Verwenden Sie die <AuditSources>-Eigenschaft in Ihrer Konfigurationsdatei, um Die Quelle von Sicherheitsrisikodaten anzugeben, die von der VulnerabilityInfo Ressource abgerufen wird. Wenn <AuditSources> nicht angegeben ist, werden die angegebenen <PackageSources> zum Laden von Sicherheitsrisikodaten verwendet. Weitere Informationen finden Sie unter Überwachungsquellen und Überprüfen von NuGet-Paketen auf Sicherheitsrisiken.

  • --format <console|json>

    Legt das Berichtsausgabeformat fest. Zulässige Werte sind console, json. Wird standardmäßig auf console festgelegt. Verfügbar ab .NET SDK 7.0.200.

  • --output-version <VERSION>

    Legt die Berichtsausgabeversion fest. Zulässiger Wert ist 1. Wird standardmäßig auf 1 festgelegt. Erfordert die Option --format json. Wenn eine neue JSON-Version verfügbar ist, erzeugt der Befehl standardmäßig das neue Format. Mit dieser Option können Sie angeben, dass der Befehl ein früheres Format erzeugen soll. Verfügbar ab .NET SDK 7.0.200.

Beispiele

  • Listenpaketverweise eines bestimmten Projekts:

    dotnet package list --project SentimentAnalysis.csproj
    
  • Auflisten von Paketverweisen mit neueren Versionen, einschließlich Vorabversionen:

    dotnet package list --outdated --include-prerelease
    
  • Listenpaketverweise für ein bestimmtes Zielframework:

    dotnet package list --framework netcoreapp3.0
    
  • Listenpaketverweise im maschinenlesbaren JSON-Ausgabeformat:

    dotnet package list --format json
    
  • Listenpaketverweise für ein bestimmtes Zielframework im maschinenlesbaren JSON-Ausgabeformat:

    dotnet package list --framework netcoreapp3.0 --format json
    
  • Speichern Sie computerlesbare JSON-Ausgabe von Paketverweise, einschließlich transitiver Abhängigkeits- und Sicherheitsrisikodetails in einer Datei:

    dotnet package list --include-transitive --vulnerable --format json >> dependencyReport.json
    
  • Listenpaketverweise im maschinenlesbaren JSON-Ausgabeformat mit Ausgabeversion 1:

    dotnet package list --format json --output-version 1