Partilhar via


Lista de pacotes dotnet

Este artigo aplica-se a: ✔️ .NET 6 SDK e versões posteriores

Nome

dotnet package list - Lista as referências de pacote para um projeto ou solução.

Observação

Se você estiver usando o SDK do .NET 9 ou anterior, use a forma "verbo primeiro" (dotnet list package) em vez disso. A forma "substantivo primeiro" foi introduzida no .NET 10. Para obter mais informações, consulte Ordem de comando mais consistente.

Sinopse

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

dotnet package list -h|--help

Descrição

O comando dotnet package list fornece uma opção conveniente para listar todas as referências de pacotes NuGet para um projeto específico ou uma solução. A partir do .NET 10, o comando executa automaticamente a restauração, se necessário, antes de gerar os resultados. Em versões anteriores, você primeiro precisa compilar/restaurar o projeto para ter os ativos necessários para que esse comando seja processado. O exemplo a seguir mostra a saída do comando dotnet package list para o projeto SentimentAnalysis:

Restore complete (5.9s)

Build succeeded in 6.0s
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.

A coluna Requested refere-se à versão do pacote especificada no arquivo de projeto e pode ser um intervalo. A coluna Resolvido lista a versão que o projeto está usando atualmente e é sempre um único valor. Os pacotes que exibem um (A) ao lado de seus nomes representam referências implícitas de pacotes que são inferidas das configurações do projeto (tipoSdk, ou propriedade <TargetFramework> ou <TargetFrameworks>).

Se você quiser pular a restauração automática, você pode usar a --no-restore opção. Exemplo dotnet package list --no-restore:

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.

Use a opção --outdated para descobrir se há versões mais recentes disponíveis dos pacotes que você está usando em seus projetos. Por padrão, --outdated lista os pacotes estáveis mais recentes, a menos que a versão resolvida também seja uma versão de pré-lançamento. Para incluir versões de pré-lançamento ao listar versões mais recentes, especifique também a opção --include-prerelease. Para atualizar um pacote para a versão mais recente, use dotnet package add.

O exemplo a seguir mostra a saída do comando dotnet package list --outdated --include-prerelease para o mesmo projeto que o exemplo anterior:

Restore complete (0.6s)

Build succeeded in 0.7s

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 você precisar descobrir se seu projeto tem dependências transitivas, use a opção --include-transitive. Dependências transitivas ocorrem quando você adiciona um pacote ao seu projeto que, por sua vez, depende de outro pacote. O exemplo a seguir mostra a saída da execução do comando dotnet package list --include-transitive para o projeto HelloPlugin, que exibe pacotes de nível superior e os pacotes dos quais eles dependem:

Restore complete (0.6s)

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

Argumentos

PROJECT | SOLUTION

O projeto ou arquivo de solução para operar. Se não for especificado, o comando procura um no diretório atual. Se mais de uma solução ou projeto for encontrado, um erro será lançado.

Opções

  • --config <SOURCE>

    As fontes do NuGet a serem usadas ao pesquisar pacotes mais recentes. Requer a opção --outdated.

  • --deprecated

    Exibe pacotes que foram preteridos.

  • -f|--framework <FRAMEWORK>

    Exibe apenas os pacotes aplicáveis para a estrutura de destino especificada. Para especificar várias estruturas, repita a opção várias vezes. Por exemplo: --framework net6.0 --framework netstandard2.0. A forma abreviada da opção (-f) está disponível a partir do SDK do .NET 9.

  • -?|-h|--help

    Imprime uma descrição de como usar o comando.

  • --highest-minor

    Considera apenas os pacotes com um número de versão principal correspondente ao procurar pacotes mais recentes. Requer a opção --outdated ou --deprecated.

  • --highest-patch

    Considera apenas os pacotes com números de versão principais e secundárias correspondentes ao pesquisar pacotes mais recentes. Requer a opção --outdated ou --deprecated.

  • --include-prerelease

    Considera pacotes com versões de pré-lançamento ao procurar pacotes mais recentes. Requer a opção --outdated ou --deprecated.

  • --include-transitive

    Lista pacotes transitivos, além dos pacotes de nível superior. Ao especificar essa opção, você obtém uma lista de pacotes dos quais os pacotes de nível superior dependem.

  • --interactive

    Permite que o comando pare e aguarde a entrada ou ação do usuário. Por exemplo, para concluir a autenticação.

  • --no-restore

    Não restaure antes de executar o comando.

  • --outdated

    Lista os pacotes que têm versões mais recentes disponíveis.

  • -s|--source <SOURCE>

    As fontes do NuGet a serem usadas ao pesquisar pacotes mais recentes. Requer a opção --outdated ou --deprecated.

  • -v|--verbosity <LEVEL>

    Define o nível de verbosidade do comando. Os valores permitidos são q[uiet], m[inimal], n[ormal], d[etailed], e diag[nostic]. A predefinição é minimal. Para obter mais informações, consulte LoggerVerbosity.

  • --vulnerable

    Lista pacotes com vulnerabilidades conhecidas. Não pode ser combinado com --deprecated ou --outdated opções. Disponível a partir do .NET SDK 9.0.300, essa opção usa a <AuditSources> propriedade em seu arquivo de configuração para especificar sua fonte de dados de vulnerabilidade, que é adquirida do recurso VulnerabilityInfo . Se <AuditSources> não for especificado, os <PackageSources> especificados serão usados para carregar dados de vulnerabilidade. Para obter mais informações, consulte Fontes de auditoria e Como verificar pacotes NuGet em busca de vulnerabilidades de segurança.

  • --format <console|json>

    Define o formato de saída do relatório. Os valores permitidos são console, json. O padrão é console. Disponível a partir do .NET SDK 7.0.200.

  • --output-version <VERSION>

    Define a versão de saída do relatório. O valor permitido é 1. O padrão é 1. Requer a opção --format json. Quando uma nova versão JSON estiver disponível, o comando produzirá o novo formato por padrão. Essa opção permitirá especificar que o comando deve produzir um formato anterior. Disponível a partir do .NET SDK 7.0.200.

Exemplos

  • Listar referências de pacotes de um projeto específico:

    dotnet package list --project SentimentAnalysis.csproj
    
  • Listar referências de pacotes com versões mais recentes disponíveis, incluindo versões de pré-lançamento:

    dotnet package list --outdated --include-prerelease
    
  • Listar referências de pacotes para uma estrutura de destino específica:

    dotnet package list --framework netcoreapp3.0
    
  • Listar referências de pacotes no formato de saída json legível por máquina:

    dotnet package list --format json
    
  • Listar referências de pacote para uma estrutura de destino específica no formato de saída json legível por máquina:

    dotnet package list --framework netcoreapp3.0 --format json
    
  • Salve a saída json legível por máquina de referências de pacote, incluindo detalhes de dependência transitiva e vulnerabilidade em um arquivo:

    dotnet package list --include-transitive --vulnerable --format json >> dependencyReport.json
    
  • Listar referências de pacotes no formato de saída json legível por máquina com a versão de saída 1:

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