
No Util.runNerdTalks(5) falamos sobre Maven.
O Maven, é uma ferramenta para gerenciamento e automação de projetos em Java. Ele é todo baseado em XML, e muito similar ao Ant.
Download
Para fazer o download entre na página oficial, ou baixe via apt-get.
Após instalar verifique via linha de comando se está funcionando:
mvn --version
Aparecerá algo parecido como:

Exemplo Básico
O arquivo básico de configuração é o pom.xml. O pom vem de Project Object Model (POM).
Exemplo básico:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.runnerdtalks</groupId>
<artifactId>teste</artifactId>
<version>1.0</version>
</project>
Sendo que:
- modelVersion, é a identificação da versão do arquivo pom.xml (padrão 4.0.0)
- groupId - identificador da empresa / site
- artifactId - nome do projeto
- version - versão do projeto
Criando um projeto novo
Você não precisa digitar todo o xml caso esteja iniciando um projeto novo.
Você pode digitar por exemplo:
mvn archetype:create -DgroupId=com.runnerdtalks -DartifactId=teste -DarchetypeArtifactId=maven-archetype-webapp
Ele construirá um projeto tipo webapp
Ou ainda:
mvn archetype:generate
Assim você escolherá passo a passo as variáveis do projeto.
Adicionando dependências
Para adicionar uma dependência (um jar como o do jUnit por exemplo) a esse projeto, adiciona-se a seguinte estrutura:
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
Nesse exemplo, adicionamos o jUnit versão 3.8.1.
O Maven baixará automaticamente do seu repositório, o http://mvnrepository.com/ para sua máquina local, colocando-o no diretório .m2/repository (No Unix/Mac OS X pode-se encontrar no ~/.m2 e no Windows – C:\Documents and Settings\username\.m2 )
O .m2/repository é um repositório local, onde será armazenado todos os seus downloads. Assim se você tiver outro projeto que utilizará por exemplo o jUnit 3.8.1, o Maven não precisará baixá-lo novamente.
Mais um exemplo. imagine que você queira usar o hibernate-annotations versão 3.5.6-final. Adicionaremos em nosso pom.xml:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-annotations</artifactId>
<version>3.5.6-Final</version>
</dependency>
Mas nesse caso o hibernate-annotations também tem suas dependências, como:
org.hibernate.hibernate-core
org.hibernate.hibernate-commons-annotations
org.hibernate.javax.persistence.hibernate-jpa-2.0-api
Assim, além do próprio hibernate-annotations, ele baixará outros jars.
Principais comandos
A partir do pom.xml (que estará na raiz do seu projeto) você digita na linha de comando:
mvn clean - apaga o diretório target, e os .class
mvn compile - compila seu projeto
mvn test - roda os testes unitáros do projeto
mvn install - instala seu projeto (jar/war/etc) no repositório local
mvn deploy - envia o projeto (jar/war/etc) para um servidor remoto
Plugins
O Maven também possui vários plugins (veja mais aqui).
Um exemplo é o plugin para transformar seu projeto em um projeto Eclipse (gerando o .project)
Outros comandos
Alguns comandos interessantes:
mvn dependency:tree - Mostra a dependencia de todos os jars existentes do seu projeto
mvn eclipse:eclipse - Gera o projeto no eclipse
Projeto no Eclipse
Como o Maven já construiu o seu projeto para o Eclipse (após rodar o mvn eclipse:eclipse), você pode simplesmente importar o projeto:


Após isso não esqueça de entrar no "properties" do projeto e configurar a variável M2_REPO
Properties-->Java Build Path -->Add Variable..-->Configure Variables...-->New
Name: M2_REPO
Path: Local do ./m2/repository (No Unix/Mac OS X pode-se encontrar no ~/.m2 e no Windows – C:\Documents and Settings\username\.m2 )
Exemplo
https://github.com/AleUehara/sample-maven
Blog da Caelum - http://blog.caelum.com.br/processo-de-build-com-o-maven/
Nenhum comentário:
Postar um comentário