Freigeben über


dotnet-Listenpaket

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

Name

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

Zusammenfassung

dotnet list [<PROJECT>|<SOLUTION>] package [--config <SOURCE>]
    [--deprecated]
    [-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 list package -h|--help

Beschreibung

Der Befehl dotnet list package 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 list package 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 add package.

Das folgende Beispiel zeigt die Ausgabe des Befehls dotnet list package --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 list package --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 der 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 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.

  • --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 die Ausführlichkeitsebene des Befehls 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. Standardmäßig wird console. Verfügbar ab .NET SDK 7.0.200.

  • --output-version <VERSION>

    Legt die Berichtsausgabeversion fest. Zulässiger Wert ist 1. Standardmäßig wird 1. 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 list SentimentAnalysis.csproj package
    
  • Auflisten von Paketverweisen mit neueren Versionen, einschließlich Vorabversionen:

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

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

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

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

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

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