Compartilhar via


lista de pacotes dotnet

Este artigo se aplica a: ✔️ SDK do .NET 6 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 o formulário "verbo primeiro" (dotnet list package) em vez disso. O formulário "substantivo primeiro" foi introduzido no .NET 10. Para obter mais informações, consulte a 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 pacote 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, primeiro você 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 Solicitada refere-se à versão do pacote especificada no arquivo de projeto e pode ser um intervalo. A coluna Resolveu lista a versão que o projeto está usando no momento e é sempre um único valor. Os pacotes que exibem um (A) ao lado de seus nomes representam referências implícitas de pacote que são inferidas das configurações do projeto ( tipo deSdk ou <TargetFramework> ou propriedade <TargetFrameworks>).

Se você quiser ignorar a restauração automática, poderá usar a opção --no-restore . 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 a adição de pacote dotnet.

O exemplo a seguir mostra a saída do comando dotnet package list --outdated --include-prerelease para o mesmo projeto do 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. As dependências transitivas ocorrem quando você adiciona um pacote ao 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 do 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 arquivo de projeto ou solução no qual operar. Se não for especificado, o comando pesquisará um no diretório atual. Se mais de uma solução ou projeto for encontrado, um erro será gerado.

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 à 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 curta 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 pesquisar pacotes mais recentes. Requer a opção --outdated ou --deprecated.

  • --highest-patch

    Considera apenas os pacotes com números de versão principais e menores 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 pesquisar 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 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 detalhes do comando. Os valores permitidos são q[uiet], m[inimal], n[ormal], d[etailed] e diag[nostic]. O padrão é minimal. Para obter mais informações, consulte LoggerVerbosity.

  • --vulnerable

    Lista pacotes que têm vulnerabilidades conhecidas. Não é possível combinar com opções de --deprecated ou --outdated. Disponível a partir do SDK do .NET 9.0.300, essa opção usa a <AuditSources> propriedade em seu arquivo de configuração para especificar a 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. Usa console como padrão. Disponível a partir do SDK do .NET 7.0.200.

  • --output-version <VERSION>

    Define a versão de saída do relatório. O valor permitido é 1. Usa 1 como padrão. 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á que você especifique que o comando deve produzir um formato anterior. Disponível a partir do SDK do .NET 7.0.200.

Exemplos

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

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

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

    dotnet package list --framework netcoreapp3.0
    
  • Listar referências de pacote no formato de saída json legível do computador:

    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 do computador:

    dotnet package list --framework netcoreapp3.0 --format json
    
  • Salve a saída json legível do computador 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 pacote no formato de saída json legível do computador com a versão de saída 1:

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