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]
unddiag[nostic]
. Der Standardwert istminimal
. 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 wirdconsole
. Verfügbar ab .NET SDK 7.0.200.--output-version <VERSION>
Legt die Berichtsausgabeversion fest. Zulässiger Wert ist
1
. Standardmäßig wird1
. 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