Babok
http://www.guj.com.br
Automatizando seus projetos com o Maven 2
Maurício Linhares de Aragão Junior
Automatize toda a gerência do ciclo de vida dos seus projetos Java utilizando o Maven 2
Introdução
O Maven é uma ferramenta de gerência e compreensão de projetos. Mas o que seriam a gerência e compreensão de projetos? O Maven gerencia projetos desde a sua criação (com a geração do esqueleto inicial do sistema) até a sua implantação em um servidor (remoto ou não). E a compreensão do projeto? O Maven mantém todas as informações do projeto em um único lugar, o Project Object Model (POM), que é o arquivo de configuração do projeto onde são definidas todas as suas características. No POM são definidas desde informações básicas do projeto, como nome, desenvolvedores, repositórios de código fonte (sistemas de controle de versão, como CVS e Subversion), como suas dependências em bibliotecas externas e até mesmo plugins do próprio Maven que são utilizados para facilitar a vida dos desenvolvedores, como um servidor web embutido que executa diretamente de dentro do projeto. Além de tudo isso, o Maven é uma ferramenta que prega a padronização dos projetos. Se você conhece a estrutura de um projeto básico do Maven, não vai ter problemas para entender outro projeto que também siga a mesma estrutura e isso diminui drasticamente o tempo que o desenvolvedor vai levar para “entrar” no novo sistema, pois ele não vai precisar entender uma nova estrutura ou aprender novos conceitos. O Maven também segue a premissa da “convenção sobre configuração”, onde se você segue o padrão, não é necessário dizer ao Maven que você está fazendo isso. Um exemplo clássico disso é a estrutura de diretórios, se você segue toda a estrutura de diretórios padrão do Maven no seu projeto, não vai precisar dizer ao plugin do compilador Javac onde ficam os seus arquivos de código fonte nem pra onde ele deve copiar os arquivos “.class” resultantes, ele já sabe exatamente onde procurar por tudo. Ele