.NET

6 mai, 2011

NuGet (NuPack): gerenciador de bibliotecas para .NET

Publicidade

O NuGet, que antes
chamava-se NuPack, é um gerenciador de bibliotecas para a plataforma .NET. Mas
você deve estar se perguntando: por que eu preciso de uma ferramenta como está,
se tenho uma IDE tão poderosa como o Visual Studio? A reposta é simples. Observe
a figura abaixo, ela irá te ajudar a entender do que estou falando:

 

O que aconteceu acima? Uma das dlls utilizadas pela biblioteca está com versão
diferente, causando assim o erro acima. O NuGet (formamente chamado de NuPack)
visa justamente a evitar esse tipo de problema, gerenciando as bibliotecas e
garantindo que todas as dlls de um pacote estejam atualizadas para que possam
funcionar perfeitamente. O NuGet foi inspirado [projeto em ruby] e pode ser
utilizado livremente dentro do Visual Studio 2010.

Trabalhando com o NuGet

O NuGet pode ser
baixado no seguinte endereço: http://nuget.codeplex.com/. Começar a utilizar o NuGet é muito fácil. Após ter baixado o
arquivo, ao executá-lo, ele será instalado facilmente. O NuGet é uma extensão para o Visual Studio
2010. Para você encontrar o NuGet, vá em Tools/Library Package Manager, conforme a figura abaixo:


Modos de utilização

O NuGet pode ser
utilizado de duas formas: usando caixas de dialogo e ele ainda conta com
uma console, na qual os pacotes podem ser gerenciados através de comandos.

Pacotes no Nuget

O NuGet tem um
repositório oficial, no qual se encontram os pacotes disponíveis, que podem ser
baixados, instalados e utilizados. O primeiro passo é visualizar os pacotes
disponíveis. Observe a figura abaixo:

Após encontrar o
pacote desejado, basta apenas clicar em install, que ele será instalado. Quando
a instalação do pacote está completa, aparece um ícone ao lado do pacote, em vez do botão:

 

No caso do pacote
utilizado como exemplo, ao navegar pelo solution explorer, você vê uma
referência para o pacote instalado, e se ele tiver alguma referência a outras
dlls, as mesmas também estarão lá, e com a respectiva versão utilizada pelo
pacote.

O NuGet grava um
arquivo chamado packages.config, que contém informações sobre os pacotes
instalados no projeto. Veja a imagem abaixo:

NuGet e o Package Manager Console

Como dito
anteriormente, o NuGet trabalha também com um poderoso console. Para acessá-lo,
basta acessar o menu do Visual Studio, conforme mostra a figura abaixo:

 

No package manager
console, você pode utilizar o comando list-package para listar todos os pacotes
instalado. O comando list-package é, na verdade, um alias para o comando
get-package. Observe um exemplo de utilização do comando:

 

Você pode ainda filtrar
sua consulta com o comando:  list-package
–filter nome_bibioteca. Observe o
exemplo abaixo:

 

Instalando o pacote via Package Manager Console

Para instalar algum
pacote, é muito fácil também. Basta digitar no console o comando install-package nome_pacote. Observer
o exemplo abaixo:

Veja que destaquei em
vermelho o projeto em que será instalado o pacote, você precisa especificar
antes de instalar o pacote.

Remover o pacote é bem simples também. Basta usar o comando uninstall-package nome_pacote. Observe o exemplo abaixo:

 

Atualizar
também é muito fácil: comando update-package nome_pacote.  Observe o
exemplo abaixo:

 

Bom, pessoal, espero
que tenham gostado do artigo, e que vocês possam tirar o máximo de proveito
desta ferramenta. Confesso que gosto muito dela, porque, ao trabalhar com
pacotes como NHibernate, sempre tinha problemas com versão de dll e, com o NuGet,
esses “problemas acabaram”. Um abraço
e até o próximo artigo.