Pacchetto dotnet list
Questo articolo si applica a: ✔️ .NET Core 3.1 SDK e versioni successive
Nome
dotnet list package
: elenca i riferimenti al pacchetto per un progetto o una soluzione.
Sinossi
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
Descrizione
Il comando dotnet list package
offre un'opzione pratica per elencare tutti i riferimenti ai pacchetti NuGet per un progetto specifico o una soluzione. Prima di tutto è necessario compilare il progetto per poter elaborare gli asset necessari per questo comando. L'esempio seguente mostra l'output del comando dotnet list package
per il progetto SentimentAnalysis:
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.
La colonna richiesta fa riferimento alla versione del pacchetto specificata nel file di progetto e può essere un intervallo. La colonna risolta elenca la versione attualmente in uso del progetto ed è sempre un singolo valore. I pacchetti che visualizzano un (A)
accanto ai relativi nomi rappresentano riferimenti impliciti ai pacchetti dedotti dalle impostazioni del progetto ( tipo diSdk
o <TargetFramework>
o <TargetFrameworks>
proprietà).
Usare l'opzione --outdated
per scoprire se sono disponibili versioni più recenti dei pacchetti in uso nei progetti. Per impostazione predefinita, --outdated
elenca i pacchetti stabili più recenti, a meno che la versione risolta non sia anche una versione non definitiva. Per includere versioni non definitive quando si elencano le versioni più recenti, specificare anche l'opzione --include-prerelease
. Per aggiornare un pacchetto alla versione più recente, usare dotnet add package.
L'esempio seguente mostra l'output del comando dotnet list package --outdated --include-prerelease
per lo stesso progetto dell'esempio precedente:
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
Se è necessario verificare se il progetto presenta dipendenze transitive, usare l'opzione --include-transitive
. Le dipendenze transitive si verificano quando si aggiunge un pacchetto al progetto che a sua volta si basa su un altro pacchetto. L'esempio seguente mostra l'output dell'esecuzione del comando dotnet list package --include-transitive
per il progetto HelloPlugin, che visualizza i pacchetti di primo livello e i pacchetti da cui dipendono:
Project 'HelloPlugin' has the following package references
[netcoreapp3.0]:
Transitive Package Resolved
> PluginBase 1.0.0
Argomenti
PROJECT | SOLUTION
File di progetto o soluzione su cui operare. Se non specificato, il comando cerca una nella directory corrente. Se viene trovata più di una soluzione o un progetto, viene generato un errore.
Opzioni
--config <SOURCE>
Origini NuGet da usare per la ricerca di pacchetti più recenti. Richiede l'opzione
--outdated
.--deprecated
Visualizza i pacchetti deprecati.
-f|--framework <FRAMEWORK>
Visualizza solo i pacchetti applicabili per il framework di destinazione specificato. Per specificare più framework, ripetere l'opzione più volte. Ad esempio:
--framework net6.0 --framework netstandard2.0
. La forma breve dell'opzione (-f
) è disponibile a partire da .NET 9 SDK.
-?|-h|--help
Stampa una descrizione di come usare il comando .
--highest-minor
Considera solo i pacchetti con un numero di versione principale corrispondente durante la ricerca di pacchetti più recenti. Richiede l'opzione
--outdated
o--deprecated
.--highest-patch
Considera solo i pacchetti con numeri di versione principali e secondari corrispondenti durante la ricerca di pacchetti più recenti. Richiede l'opzione
--outdated
o--deprecated
.--include-prerelease
Considera i pacchetti con versioni non definitive durante la ricerca di pacchetti più recenti. Richiede l'opzione
--outdated
o--deprecated
.--include-transitive
Elenca i pacchetti transitivi, oltre ai pacchetti di primo livello. Quando si specifica questa opzione, si ottiene un elenco di pacchetti da cui dipendono i pacchetti di primo livello.
--interactive
Consente al comando di arrestare e attendere l'input o l'azione dell'utente. Ad esempio, per completare l'autenticazione. Disponibile a partire da .NET Core 3.0 SDK.
--outdated
Elenca i pacchetti con versioni più recenti disponibili.
-s|--source <SOURCE>
Origini NuGet da usare per la ricerca di pacchetti più recenti. Richiede l'opzione
--outdated
o--deprecated
.
-v|--verbosity <LEVEL>
Imposta il livello di dettaglio del comando. I valori consentiti sono
q[uiet]
,m[inimal]
,n[ormal]
,d[etailed]
ediag[nostic]
. Il valore predefinito èminimal
. Per altre informazioni, vedere LoggerVerbosity.
--vulnerable
Elenca i pacchetti con vulnerabilità note. Impossibile combinare
--deprecated
o--outdated
opzioni. Usare la proprietà<AuditSources>
nel file di configurazione per specificare l'origine dei dati della vulnerabilità, acquisiti dalla risorsa VulnerabilityInfo. Se non viene specificato<AuditSources>
, il<PackageSources>
specificato viene usato per caricare i dati della vulnerabilità. Per altre informazioni, vedere Controllare le origini e Come analizzare i pacchetti NuGet per individuare le vulnerabilità di sicurezza.--format <console|json>
Imposta il formato di output del report. I valori consentiti sono
console
,json
. Il valore predefinito èconsole
. Disponibile a partire da .NET SDK 7.0.200.--output-version <VERSION>
Imposta la versione di output del report. Il valore consentito è
1
. Il valore predefinito è1
. Richiede l'opzione--format json
. Quando è disponibile una nuova versione JSON, il comando produrrà il nuovo formato per impostazione predefinita. Questa opzione consente di specificare che il comando deve produrre un formato precedente. Disponibile a partire da .NET SDK 7.0.200.
Esempi
Elencare i riferimenti ai pacchetti di un progetto specifico:
dotnet list SentimentAnalysis.csproj package
Elencare i riferimenti ai pacchetti con versioni più recenti disponibili, incluse le versioni non definitive:
dotnet list package --outdated --include-prerelease
Elencare i riferimenti ai pacchetti per un framework di destinazione specifico:
dotnet list package --framework netcoreapp3.0
Elencare i riferimenti ai pacchetti nel formato di output JSON leggibile del computer:
dotnet list package --format json
Elencare i riferimenti ai pacchetti per un framework di destinazione specifico nel formato di output JSON leggibile del computer:
dotnet list package --framework netcoreapp3.0 --format json
Salvare l'output JSON leggibile del computer dei riferimenti ai pacchetti, incluse le dipendenze transitive e i dettagli della vulnerabilità in un file:
dotnet list package --include-transitive --vulnerable --format json >> dependencyReport.json
Elencare i riferimenti ai pacchetti nel formato di output JSON leggibile del computer con output versione 1:
dotnet list package --format json --output-version 1