12 de abr de 2011

O Maven é um substituto para o Ant?

Estava pensando nisso por estes dias: O Maven é um substituto para o Ant?
Por trabalhar há algum tempo com as duas ferramentas consegui identificar características as quais definem cada uma delas…mas será mesmo que podemos radicalizar assim substituindo uma por outra?

Caso você trabalhe em um projeto já consolidado e organizado com Ant há muito tempo talvez seja melhor um conhecimento aprofundado sobre o Maven para garantir que a mudança seja realmente necessária e que não irá causar impactos no seu trabalho.
Uma grande dica que sempre levo em consideração ao decidir usar uma ferramenta ou outra: DIVIDIR PARA CONQUISTAR! Pois é, identificar pequenas partes de seu projeto é um fator importante para esta decisão.
Como disse dividir para conquistar é algo muito importante no momento de estruturar um projeto, então, identifique todos os artefatos gerados(ear, war, jar, ejbs etc). Tente criar um pom.xml específico para cada módulo separado. Lembre-se que no final deve existir um projeto pai que identifique todos os módulos gerados.
Outra grande dica é: faça o Maven coexistir com o Ant pelo menos no início. Tente fazer via Maven o que é realizado com Ant. Caso encontre problemas no uso do Maven, a geração dos artefatos está garantida no Ant.
Quando comecei no uso do Maven ainda usei muito o Ant para tarefas as quais ainda não sabia usar via Maven. Usei alguns plugins para isto e em momentos também mantive o famoso build.xml do Ant também.
Mas e a pergunta titulo desta postagem? Alguém pode responder através dos comentários? Bom, vou deixar a minha conclusão aqui, espero comentários.
O Maven pode substituir o Ant em muitos momentos porém creio que o Ant é tão importante quanto o Maven nos projetos. Ao implantar o Sonar nos projetos os quais eu participo esbarrei em uma grande dificuldade: O Sonar funciona muito bem com o Maven mas como vou executar todos os 20 e tantos projetos que estão agora usando esta ferramenta para análise e qualidade de código? Na mão? Executando um a um? Nunca! Aprendi com um grande professor, na época da faculdade de engenharia, que assim como a Física, a Matemática, enfim, o conhecimento adquirido, a Informática também é uma ferramenta muito útil na nossa vida diária. Pois é, lembrei disso, o que fiz para resolver o problema de execução da qualidade de código dos projetos? Usei o Ant para isto. Alguns podem perguntar, porque não usa o Hudson? Pois é, eu usei porém imagine configurar isto para 20 e poucos projetos? Resolvi então criar um script no Ant que exatamente identifica todos os pom.xml existentes em nossa estrutura de projetos e executa o comando maven para executar a qualidade de código via Sonar de uma só vez…Ficou mais simples porém o resultado foi alcançado conforme esperado.
Lembre-se sempre: tarefas repetitivas significam perda de tempo, automatize tudo o que for necessário. Não podemos perder tempo com tarefas comuns que poderiam estar claramente organizadas em um procedimento automático. Pense no Ant e no Maven para tais tarefas. Descubra qual é mais adequado para cada uma delas.
De volta a conclusão…
Resumindo, o Maven e Ant são ferramentas complementares e possuem um grande valor devido as suas particularidades. Não seja um extremista dizendo que uma é melhor do que a outra e ponto. Aprenda na prática que o bom uso de cada uma delas irá trazer benefícios distintos e que no final irão trazer um beneficio ainda maior ainda para todos aqueles que participam no projeto junto com você. Não quero em nenhum momento formar opinião. Prefiro que tomem suas próprias decisões sobre o que é melhor, como proceder etc. Caso existam dúvidas posso até ajudá-lo como prosseguir.
Comentem as suas dúvidas, sugestões, reclamações…Defendam suas ideias nos comentários.
Pesquisa personalizada

0 comentários:

Postar um comentário

Leia as regras:
Todos os comentários são lidos e moderados previamente.
Apenas os que respeitam as regras abaixo serão publicados:
- o comentário deve estar relacionado ao assunto do post
- não serão aceitos palavrões e ofensas ao redator do blog ou a terceiros
- não inclua links desnecessários no conteúdo do comentário
- se quiser deixar sua url, comente com a opção OpenId
Obs.: os comentários dos leitores não refletem a opnião do blog.