Adaptar Projeto Existente para o Maven

8 respostas
P

Estou aprendendo a usar o Maven e tenho observado que todos os materiais existentes ensinam a configurar um projeto básico, o quickstart, “do zero”. Isso é bom, mas neste momento seria melhor se eu conseguisse “adaptar um projeto existente ao Maven”.

Como fazer isso?

No Ant, além do build.xml, existe o arquivo de properties. Existe isso também para o Maven?

Existe o conceito de “script de build” para Maven?

8 Respostas

R

"O build.xml do maven é o pom.xml"
Sim, você pode customizar a forma que é feito o deploy do projeto, como é construido, dependências, através do pom.xml de cada projeto.

Para migrar para uma arquitetura maven é uma tarefa razoavelmente fácil,
necessário adequar o projeto dentro da estrutura (tbm customizado) src/main/java e arquivos, src/main/resources. Para projetos web a estrutura é diferente, dá uma olhada na documentação para cada caso.

se o nome do pacote do seu projeto for: br.com.empresa
no groupId do maven insira br.com.empresa

Depois, copie as classes correspondente a cada pacote.

P

Seja qual for o tipo de <packaging> que eu escolha - jar, war ou ear - o Maven gera um archive contendo arquivos .class. alguns diretórios, o pom.xml etc. Não “embute” nenhum .java.

Sei que isso é o suficiente para que determinada aplicação rode num container. Mas, e seu eu quiser incluir no meu “processo de build” a verificação de código-fonte, com ferramentas como o PMD, o Checkstyle e o Findbugs? Essas ferramentas não precisam de .java para rodar/verificar?

R

Isto é feito através do plugins e goals do maven. Pesquise se não existe plugins para o PMD Checkstyle e o FindBugs.

P

Ainda não encontrei nada dizendo ser possível “adaptar o Maven ao meu projeto”. Tudo o que vi até agora diz justamente o contrário.

Neste momento, por exemplo, estou tendo de refatorar meus pacotes e deixá-los “no padrão do Maven”…

É isso mesmo? Para poder usufruir dos benefícios desta ferramenta, terei mesmo de “moldar-me” a ela?

R

rápida pesquisa 256.000 resultados

já precisei migrar vários sistemas, nunca precisei refatorar meus pacotes para utilizar maven.

enfim: “A Técnica é transformada em Arte por quem a emprega”

K

Oi Paulo,

uma boa coisa é você simplesmente modificar a estrutura de diretórios do seu projeto. Siga as convenções do Maven, cujas principais são basicamente as seguintes:

pom.xml na raiz do projeto
src/main/java <- Seu código Java entra aqui
src/main/resources <- Seus recursos que serão incluidos no pacote a ser gerado
src/test/java <- Seus testes unitários e de integração
src/test/resources <- Seus arquivos de recursos

Se for uma aplicação web, você também vai querer ter um diretório
src/main/webapp <- que vai corresponder ao diretório aonde todas as páginas, WEB-INF e META-INF se encontrarão

Dica: use o plugin do Maven para Eclipse e crie um projeto web padrão maven usando um dos estereótipos de sua preferência. Em seguida, dê um duplo clique sobre o pom.xml. Surgirá uma nova página com varias abas dentro dela. Clique na “effective pom”. Nela vão estar todas as propriedades do Maven com seu valor padrão. É uma excelente fonte para descobrir quais os padrões adotados pela ferramenta.

Fica a dica!

P

Oi kico, quanto tempo!?

Ué, mas isso não é refatorar? :roll: não é justamente o que estou tentando evitar? :oops:

K

Oi Paulo,

neste caso eu não chamaria de “refatorar”, porque você só vai mudar a pasta em que está salvando seu código fonte. É possível evitar esta mudança de local, pra isto, basta que você siga a dica que te passei de verificar as configurações padrão do Maven, mas pra evitar amolação no futuro, eu moveria os diretórios sim.

Criado 22 de fevereiro de 2012
Ultima resposta 24 de fev. de 2012
Respostas 8
Participantes 3