Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
O Console do Gerenciador de Pacotes no Visual Studio usa comandos do PowerShell para interagir com pacotes NuGet. Você pode usar o console quando não há como fazer uma operação por meio da UI do Gerenciador de Pacotes. Também pode usar a interface de linha de comandos dotnet (CLI) ou os comandos da CLI NuGet na consola.
Este artigo descreve como encontrar, instalar, atualizar e desinstalar pacotes NuGet usando comandos PowerShell na Consola do Gestor de Pacotes. Para obter a referência completa de comandos do PowerShell no Console do Gestor de Pacotes, consulte Referência do PowerShell.
Importante
Os comandos e argumentos do PowerShell neste artigo são específicos do Console do Gerenciador de Pacotes do Visual Studio. Esses comandos diferem dos comandos do módulo PackageManagement que você pode usar em um ambiente geral do PowerShell. Cada ambiente tem comandos que não estão disponíveis no outro, e comandos com o mesmo nome podem diferir em seus argumentos específicos.
Disponibilidade do console
A partir do Visual Studio 2017, o NuGet e o Gerenciador de Pacotes NuGet são instalados automaticamente quando você cria qualquer arquivo . Cargas de trabalho relacionadas à NET no Visual Studio. Também pode instalar o Gestor de Pacotes usando o Visual Studio Installer. No instalador, selecione Componentes Individuais>Ferramentas de código>gestor de pacotes NuGet.
Também pode procurar a extensão NuGet Package Manager no Visual Studio no menu Ferramentas>Extensões e Atualizações ou Extensões . Se você não conseguir usar o instalador de extensões no Visual Studio, poderá baixar a extensão diretamente do https://www.nuget.org/downloads.
O Console do Gerenciador de Pacotes é integrado ao Gerenciador de Pacotes para Visual Studio no Windows. O Visual Studio Code não inclui a consola, mas podes usar a extensão C# Dev Kit para gerir pacotes NuGet. Com esta extensão, pode executar comandos no explorador de soluções do C# Dev Kit ou na Paleta de Comandos do Visual Studio Code. Para mais informações, consulte NuGet no Visual Studio Code.
Encontre e instale rapidamente um pacote
Para usar a Package Manager Console para encontrar e instalar rapidamente um pacote, siga os seguintes passos:
Abra seu projeto ou solução no Visual Studio e selecione Ferramentas>NuGet Package Manager>Console do Gerenciador de Pacotes para abrir a janela Console do Gerenciador de Pacotes.
Na consola, executa o
Find-Packagecomando com uma palavra-chave para encontrar o pacote que queres instalar. Por exemplo, para encontrar pacotes que fornecem módulos e handlers de registo de erros (ELMAH), execute o seguinte comando para procurar a palavra-chaveelmah. Se você já sabe o nome do pacote desejado, ignore esta etapa.Find-Package elmahDepois de encontrares o pacote, executa o
Install-Packagecomando com o ID do pacote para instalar o pacote. Por exemplo, para instalar oElmah.MVCpacote, execute o seguinte comando:Install-Package Elmah.MVC
Para obter mais detalhes sobre esses comandos, consulte as seções Localizar um pacote e Instalar um pacote .
Sugestão
Muitas operações de console dependem de ter uma solução com um nome de caminho conhecido aberto no Visual Studio. Se tiver uma solução não guardada ou nenhuma solução, aparece uma mensagem de erro a indicar que não tem uma solução aberta ou guardada. Para corrigir o erro, crie e guarde uma solução, ou guarde uma solução não guardada.
Usar controlos da consola
Para abrir a Console do Gestor de Pacotes no Visual Studio, vá ao menu superior e depois selecione Ferramentas>NuGet Package Manager>Package Manager Console. O console é uma janela do Visual Studio que você pode organizar e posicionar como quiser. Para mais informações, consulte Personalize layouts de janelas e personalize separadores.
Por defeito, os comandos de consola operam contra a fonte e projeto específicos do pacote mostrados nos controlos no topo da janela da Consola do Gestor de Pacotes:
A seleção de uma fonte de pacote ou projeto diferente altera os padrões dos comandos subsequentes. Para alterar estas configurações para comandos individuais sem modificar os padrões, a maioria dos comandos de console suporta as opções -Source e -ProjectName.
Para gerir as fontes dos pacotes, selecione o ícone de engrenagem, que abre o diálogo Ferramentas>Opções>NuGet Package Manager>Fontes de Pacotes do Gestor. Para limpar o conteúdo da consola, selecione Limpar Consola
, ao lado da lista de projetos Padrão .
Para interromper um comando de longa duração, selecione Parar execução
de comando , ao lado do ícone Limpar Consola . Por exemplo, o running Get-Package -ListAvailable -PageSize 500 lista os 500 melhores pacotes disponíveis na fonte padrão, como nuget.org, o que pode demorar vários minutos.
Encontre um pacote
Para localizar um pacote na fonte padrão, use Find-Package. Os seguintes blocos de código mostram-lhe como usar parâmetros para refinar a sua pesquisa:
Encontre e liste pacotes que contenham uma determinada palavra-chave:
Find-Package <keyword>Encontre e liste pacotes com um ID que comece por uma determinada cadeia:
Find-Package <string> -StartWithMostre os primeiros 100 pacotes que contêm uma determinada palavra-chave:
Find-Package <keyword> -First 100Por padrão,
Find-Packageretorna uma lista de 20 pacotes. Tal como no exemplo anterior, pode usar-Firstpara especificar um número diferente de embalagens.Liste todas as versões de um determinado pacote:
Find-Package <package-name> -AllVersions -ExactMatch
Instalar um pacote
Para instalar um pacote no projeto padrão, use Install-Package <package-name>. O comando do console Install-Package executa as seguintes ações:
- Executa as etapas em O que acontece quando um pacote NuGet é instalado.
- Exibe os termos de licença aplicáveis na janela do console com contrato implícito. Se você não concordar com os termos, você deve desinstalar o pacote.
- Adiciona uma referência ao pacote no ficheiro do projeto e no Explorador de Soluções sob o nó Dependências ou Referências . Deve guardar o projeto para propagar as alterações ao ficheiro do projeto.
Por defeito, Install-Package adiciona o pacote ao projeto padrão que a janela da consola especifica. Para adicionar o pacote a um projeto que não seja o projeto padrão, use a -ProjectName opção. Por exemplo, para adicionar o Elmah.MVC pacote ao projeto não padrão UtilitiesLib , execute o seguinte comando:
Install-Package Elmah.MVC -ProjectName UtilitiesLib
Desinstalar um pacote
Para desinstalar um pacote do projeto padrão, use Uninstall-Package <package-name>. Se precisares de encontrar o nome do pacote, usa o Get-Package para listar todos os pacotes instalados no projeto predefinido.
Uninstall-Package executa as seguintes ações:
- Remove referências ao pacote do projeto e de quaisquer formatos de gerenciamento. As referências não aparecem mais no Gerenciador de Soluções. Talvez seja necessário reconstruir o projeto para remover a referência na pasta bin .
- Reverte todas as alterações que a instalação do pacote fez no app.config ou web.config.
- Remove dependências previamente instaladas se nenhum pacote restante usar essas dependências.
Os seguintes blocos de código mostram-lhe como usar o comando em vários cenários:
Desinstalar um pacote e todas as suas dependências não utilizadas:
Uninstall-Package <package-name> -RemoveDependenciesDesinstalar um pacote mesmo que outros pacotes dependam dele:
Uninstall-Package <package-name> -Force
Atualizar um pacote
Para atualizar pacotes, use Update-Package. Também pode usar o Get-Package para listar as atualizações disponíveis dos pacotes instalados. Os seguintes blocos de código mostram-lhe como usar parâmetros para modificar o âmbito da atualização:
Verifique se existem versões mais recentes disponíveis para os pacotes instalados na solução:
Get-Package -updatesAtualize um pacote específico:
Update-Package <package-name>Atualize todos os pacotes num projeto:
Update-Package -ProjectName <project-name>Atualize todos os pacotes numa solução:
Update-Package
Usar a CLI do NuGet no console
Também podes fazer a maioria das operações de consola usando a interface de comando NuGet. No entanto, os comandos de consola PowerShell operam no contexto do projeto e solução guardados do Visual Studio, e muitas vezes fazem mais do que os seus comandos equivalentes na CLI NuGet. Por exemplo, instalar um pacote através Install-Package adiciona uma referência ao arquivo de projeto, mas o comando NuGet CLI não. Por esta razão, os programadores que trabalham no Visual Studio normalmente preferem usar os comandos da consola em vez da CLI do NuGet.
Para usar comandos da CLI do NuGet no Console do Gerenciador de Pacotes, instale o pacote NuGet.CommandLine .
Install-Package NuGet.CommandLine
O comando anterior instala a versão mais recente da CLI do NuGet. Para instalar uma versão específica, use a -Version opção. Por exemplo, para instalar a Versão 4.4.1, use o seguinte comando:
Install-Package NuGet.CommandLine -Version 4.4.1
Depois de instalar o NuGet.CommandLine pacote, você pode executar todos os comandos da CLI do NuGet por meio do Console do Gerenciador de Pacotes.
Estender o console do Gerenciador de Pacotes
Alguns pacotes estendem a Consola do Gestor de Pacotes adicionando comandos. Por exemplo, o Microsoft.EntityFrameworkCore.Tools pacote adiciona comandos como os seguintes:
-
Add-Migration: Gera um ficheiro de migração para criar ou atualizar tabelas de bases de dados -
Update-Database: Cria ou atualiza uma base de dados de acordo com a migração mais recente
Configurar um perfil do NuGet PowerShell
Podes criar um perfil PowerShell para tornar os comandos mais usados disponíveis em todos os contextos PowerShell, para não perderes as definições do PowerShell entre sessões. O NuGet oferece suporte a um perfil específico do NuGet, geralmente em %UserProfile%\Documents\WindowsPowerShell\NuGet_profile.ps1.
Para encontrar a localização do seu perfil de utilizador, introduza $profile na consola:
$profile
C:\Users\<user>\Documents\WindowsPowerShell\NuGet_profile.ps1
Para determinar se existe um perfil nesse local, digite test-path $profile. Se o comando retornar False, você precisará criar o perfil com o nome especificado nesse local. Para obter mais informações, consulte Perfis do Windows PowerShell.