sábado

Plugin m2eclipse

Eu recebo dezenas de visitas diárias, voltadas para busca de informações sobre maven, como por exemplo para acessar o post Criando um projeto Maven no Linux . Realmente, trabalhar com desenvolvimento utilizando maven para gerenciar os diversos archetypes e dependências que os projetos utilizam pode significar:
  1. Repositórios de códigos mais enxutos, já que as libs NÃO estarão dentro do source, apenas suas referências. O maven baixa e agrega as libs no momento da compilação do projeto, neste caso ele será colocado dentro da pasta target;
  2. Mais eficiência ao remover conflitos entre versões de libs, através da utilização da tag exclusion dentro da tag dependency;
  3. Maior facilidade ao integrar projetos;
  4. Facilidade ao utilizar ferramentas de integração contínua, como o Hudson;
E muitas outras vantagens. Um excelente plugin do maven para eclipse é o m2eclipse, abaixo segue um pequeno tutorial de como instalá-lo e alguns toques sobre sua utilização.

Instalando o plugin m2eclipse 

  • Acesse o menu Help > Install new Software
  • Em Work with clique no botão Add
  • Insira os dados:
  • Clique em OK
  • Selecione o item m2eclipse no combo ao lado de Work with
  • Marque o item Maven Integration for Eclipse
  • Clique em Next
  • Leia e aceite os termos de uso
  • Siga confirmando até reiniciar o eclipse

Criando um projeto utilizando o plugin m2e

  • Acesse o menu File > New > Other
  • Selecione a pasta Maven > Maven Project
  • Marque Create a Simple Project
  • Clique em Next

Entendendo o painel Artifact

Group Id

O group id deve ser formado por um nome único, que diferencie o projeto de todos os outros já desenvolvidos. Costuma-se utilizar o domínio que o desenvolvedor definiu para o projeto + o grupo do próprio projeto, onde domínio é compreendido como o endereço web de propriedade da empresa desenvolvedora ou do próprio desenvolvedor. No meu caso eu utilizo o domínio do meu site fabriciojf.com para os meus projetos pessoais e o bemmelhor.com.br para os projetos da minha empresa.

O detalhe é que o domínio deve ser escrito ao contrário, citando o exemplo do próprio projeto maven, o domínio da empresa é apache.org e o grupo do projeto é maven, sendo assim, o group id é:

Group Id: org.apache.maven 

Artifact Id

É o nome utilizado para o projeto, o ideal é utilizar um nome sem caracteres estranhos ou no máximo um traço "-" para separar palavras, Ex: maven-project, hibernate-core, hibernate-annotations e ehcache. 

Version

É a versão atual do projeto, costuma-se utilizar a versão xx-SNAPSHOT para identificar aquela que está sendo desenvolvida no momento. Por exemplo, estou gerando a versão 0.5.6-SNAPSHOT do projeto com.fabriciojf.libtools (com.fabriciojf.libtools-0.5.6-SNAPSHOT), quando eu for distribuir esta versão ela ficará simplesmente com.fabriciojf.libtools-0.5.6 e a versão SNAPSHOT será a próxima em desenvolvimento, ex: com.fabriciojf.libtools-0.6.0-SNAPSHOT.

Existem algumas formas para se controlar a versões de projetos, eu particularmente utilizo a seguinte:

X.Y.Z (1.0.5, 2.3.45, 0.12.22 ...) onde:

  • X corresponde a mudanças que tornem o projeto incompatível
  • Y corresponde a novas funcionalidades
  • Z corresponde a correções de bugs
Supondo que eu esteja desenvolvendo um projeto que está na versão 2.4.21 e faça a correção de um bug, vou gerar então a versão 2.4.22; logo após insiro uma nova tela de cadastro, subo a versão para 2.5.0 e assim sucessivamente.

Em alguns casos pode-se acrescentar a revisão do repositório no momento do geração da versão,
ex: 1.7.13.56437

Packaging

É o tipo de distribuição do projeto, pode ser por exemplo um software para internet (war) ou um software desktop (jar) e etc.

Name e Description

Como sugerido, informar nome e descrição do projeto.

Após configurar os dados do artifact clique em Finish para criar o projeto fisicamente no diretório. O próximo passo é entender o arquivo pom.xml.

O arquivo pom.xml

Dentro do eclipse navegue através do Project Explorer ou  Package Explorer, expanda o projeto criado e localize o arquivo pom.xml. Perceba que os dados configurados no momento da criação do projeto através do m2e estão dispostos nas respectivas tags. Desta forma o conteúdo do arquivo deverá estar parecido com:



Um problema que pode acontecer quando se importa um projeto existente no workspace, é o projeto perder a referência das libs, desta forma quando você executa o comando Run As ele não encontra as dependências configuradas dentro do pom. Para solucionar este problema faça o seguinte:
  • Dê um clique com o botão direito em cima do projeto;
  • Localize Maven > Update Project 
Aguarde que o projeto será reconfigurado. Com essas informações já é possível criar um projeto  maven à partir do m2e.


Nenhum comentário: