Quando você trabalha em diferentes aplicações, é comum se deparar com os mesmos problemas e as mesmas soluções aparecendo de novo e de novo. Isso faz parte do dia a dia de um desenvolvedor, mas pode ser meio cansativo. Agora, imagine se você pudesse pegar esse código repetido, organizar direitinho e usar facilmente em outros projetos. Legal, né? Neste artigo, vamos explorar como fazer isso com o NuGet.
Visão geral:
O NuGet é o gerenciador de pacotes oficial do .NET e ajuda você a empacotar, compartilhar e usar funcionalidades reutilizáveis de forma simples. Com ele, dá para organizar seu código em pacotes, reaproveitá-los em outros projetos e até colaborar de maneira mais prática com outros desenvolvedores.
"Um pacote NuGet é um arquivo ZIP com a extensão .nupkg que contém código compilado (DLLs), arquivos relacionados e um manifesto descritivo com informações como o número da versão. Desenvolvedores criam e publicam pacotes, enquanto consumidores obtêm e utilizam suas funcionalidades. O NuGet gerencia os detalhes intermediários."
Criando um projeto
Antes de começar, crie uma conta no NuGet.org. Isso será necessário para publicar seu pacote.
Crie um projeto do tipo Class Library. No terminal, execute:
dotnet new classlib --name ExamplePackage
Em seguida, abra o projeto em seu editor de preferência. Vamos criar um exemplo simples que converte um objeto em uma string JSON.
Definindo os Metadados
Para criar um pacote, é necessário configurar informações importantes diretamente no arquivo .csproj do projeto. Esse arquivo define os metadados essenciais que identificarão seu pacote no NuGet.
Metadados Obrigatórios:
- TargetFramework: Define a versão do .NET que seu projeto utilizará.
- PackageId: Um identificador único para seu pacote.
-
Version: Versão do pacote no formato Major.Minor.Patch (SemVer).
- Major: Alterações que quebram compatibilidade.
- Minor: Novas funcionalidades.
- Patch: Correções de bugs.
Metadados opcionais (não obrigatórios mas fortemente recomendados):
- Authors Nome do autor ou autores do pacote.
- Description: Uma breve descrição do propósito do pacote.
- PackageLicenseExpression: Especifica a licença sob a qual o pacote é distribuído.
Atualize o arquivo .csproj para incluir essas informações:
Compilando o pacote
Com os metadados configurados, é hora de compilar o pacote. No terminal, execute:
dotnet pack --configuration Release
Esse comando criará um arquivo .nupkg na pasta bin/Release.
Testando localmente
Configurando a Fonte Local:
Dentro do projeto, crie uma pasta para os pacotes locais:
mkdir NuGetLocal
Copie o arquivo .nupkg gerado para essa pasta:
cp bin/Release/examplePackage.Convert.1.0.0.nupkg NuGetLocal
Adicione a pasta como uma fonte NuGet:
dotnet nuget add source /caminho/completo/para/NuGetLocal --name NuGetLocal
Consumindo o Pacote no Projeto:
Você pode criar um projeto console para testes:
dotnet new console --name ExamplePackageTest
cd ExamplePackageTest
Use o comando dotnet add package para instalar o pacote:
dotnet add package examplePackage.Convert --version 1.0.0
Testando o Pacote
Abra o arquivo Program.cs do projeto de teste e use o pacote:
Publicação
Após validar seu pacote, é hora de publicá-lo. Acesse sua conta em NuGet.org, vá até o seu perfil e crie uma nova chave.
No terminal, use o comando abaixo para publicar seu pacote no NuGet:
dotnet nuget push bin\Release\examplePackage.Convert.1.0.0.nupkg --api-key SuaAPIkEY --source https://api.nuget.org/v3/index.json
Pronto, se tudo estiver correto após alguns minutos, o pacote estará disponível no NuGet.org.
Conclusão
Agora que você aprendeu a criar, testar e publicar pacotes NuGet, pode começar a criar os seus próprios pacotes para facilitar o seu trabalho e, quem sabe, ajudar outras pessoas com as suas soluções.
Top comments (0)