Access Keys:
Skip to content (Access Key - 0)
 
Maven 4 Continuous Integration - Parte I

Olá Amigos do Sou Java: Este artigo é o primeiro da Série Maven 4 Continuous Integration eu espero que seja útil a todos vocês e fiquem a vontade para me escrever caso fiquem com duvidas.

É Aquela velha historia no mundo Software: A integração é um longo e demorado processo que é difícil e imprevisivel.
Mas isso não precisa ser uma regra, quando todo o time adota a pratica de integrar o repositório frequentemente, diariamente, então com a ajuda do Maven tudo pode ficar mais facil.

Maven 4 Continuous Integration - Parte I (Resumo) Este artigo vai lhe iniciar no mundo da integração maven, você vai criar um novo projeto gerenciado pelo maven, com algumas rotinas basicas de deploy e gerenciamento de dependencias:

1) Efetue o download do Maven:  http://www.apache.org/dyn/closer.cgi/maven/binaries/apache-maven-2.1.0-M1-bin.zip

2) Extraia todo o conteúdo do arquivo em C:/maven

3) Configurando variaveis de ambiente: (Clique com o botao direito sobre o icone "Meu Computador",  Propriedades; Escolha a aba "Avancado",  Variaveis de ambiente). Vamos precisar de 3 variaveis de ambiente devidamente configuradas são elas

JAVA_HOME: C:\Java\java
JRE_HOME: C:\Java\java\jre
MAVEN_HOME: C:\maven

Para criar uma nova variavel de ambiente basta pressionar o botao "Nova" e adicionar o nome e o caminho até a pasta. Em seguida adicione ao final da variavel Path suas novas referencias de modo que ela fique semelhante a isto:

Path: %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%JAVA_HOME%\bin;%JRE_HOME%\bin;%MAVEN_HOME%\bin

Em seguida pressione ok e abra uma janela MS-DOS (iniciar,  executar, cmd), digite mvn -version e verifique o log:

C:\Documents and Settings\thomasmodeneis>mvn -version
Maven version: 2.0.9
Java version: 1.5.0_11
OS name: "windows xp" version: "5.1" arch: "x86"

4) Vá até nossa pasta C:\maven e digite:

1) mkdir tst

2) cd tst  

3) mvn archetype:create -DarchetypeGroupId=org.apache.maven.archetypes -DarchetypeArtifactId=maven-archetype-webapp -DgroupId=br.org.soujava.app -DartifactId=soujava

Algumas dependencias serão baixadas automaticamente, você provavelmente não vai precisar se preocupar.

[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'archetype'.
[INFO] artifact org.apache.maven.plugins:maven-archetype-plugin: checking for up
dates from central
Downloading: http://repo1.maven.org/maven2/org/apache/maven/plugins/maven-archetype-plugin/2.0-alpha-4/maven-archetype-plugin-2.0-alpha-4.pom
4K downloaded  
(...)
[INFO] BUILD SUCCESSFUL
[INFO] -----------------------------------------
[INFO] Total time: 55 seconds
[INFO] Finished at: Mon Sep 29 11:39:02 BRT 2008
[INFO] Final Memory: 7M/13M

3)b-

MAS é possivel que tudo de errado e que o maven não encontre as dependencias, então caso isto aconteca siga este passo, caso contrario pule para o proximo:

Abra a pasta C:\maven\conf e o arquivo settings.xml, você vai notar que ele já vem com diversas tags e uma delas --> proxies, então configure-a com seu usuario do proxy, a senha, o ip e a porta.

<proxies>
    <proxy>
      <active>true</active>
      <protocol>http</protocol>
      <host>proxy</host>
      <port>3128</port>
      <username>thomasmodeneis</username>
      <password>suasenhaproxy</password>
      <nonProxyHosts>proxy|127.0.0.1</nonProxyHosts>
    </proxy>
  </proxies> 

Feito isso tudo deve funcionar normalmente.

5) Sim agora já possuimos nossa primeira aplicação, vamos verificar C:\maven\tst\soujava

Notem a estrutura do projeto já está pronta para inicar o desenvolvimento WEB, em seguida execute o comando:

C:\maven\tst\soujava>mvn eclipse:eclipse 

[INFO] BUILD SUCCESSFUL

Agora vc já pode abrir seu projeto no eclipse.

Então abra o arquivo C:\maven\tst\soujava\pom.xml, vamos adicionar algumas tags no nosso arquivo de configuração:

Depois da tag  <url>http://maven.apache.org</url> adicione:  
<developers>
  <developer>
     <id>thomasmodeneis</id>
     <name>Thomas Rafael Modeneis</name>
     <email>thomas.modeneis@soujava.org.br</email>
     <organization>Sou Java</organization>
     <organizationUrl>http://www.soujava.org.br</organizationUrl>
    </developer>
 </developers>

Vamos agora tentar fazer o deploy do nosso WAR no containner tomcat? (suponho que vc já possua um tomcat instalado, caso contrario va correndo buscar o seu em: http://tomcat.apache.org/

C:\maven\tst\soujava>mvn clean package war:exploded

[ERROR] BUILD ERROR

...provavelmente vai falhar pois precisamos configurar mais uma tag:

<build>
    <finalName>soujava</finalName>
    <plugins>
    <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <configuration>
      <webappDirectory>C:\servers\tomcat\webapps\soujava</webappDirectory>
    </configuration>
    <version>2.1-alpha-2</version>    
    <goals>
    <goal>exploded</goal>
    </goals>   
    </plugin>
    </plugins>           
  </build>

Tente novamente: mvn clean package war:exploded

agora o maven vai efetuar o download do plugin para você, vai limpar o diretorio target, e extrair seu WAR para o tomcat.

[INFO] Exploding webapp
[INFO] Assembling webapp[soujava] in [C:\servers\tomcat\webapps\soujava]
[INFO] Processing war project
[INFO] Copying webapp resources[C:\maven\tst\soujava\src\main\webapp]
[INFO] Webapp assembled in[16 msecs]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 5 seconds
[INFO] Finished at: Mon Sep 29 12:43:44 BRT 2008
[INFO] Final Memory: 7M/14M
[INFO] ------------------------------------------------------------------------

Inicie seu Tomcat e verifique a mensagem: Hello World!

PRONTO. Agora você já sabe instalar o maven, configurar seu projeto web e fazer deploy no servidor de aplicações. Não foi dificil em? Aguarde nosso proximo artigo vamos ensinar outras manhas.

O Projeto completo esta disponivel para download:

https://www.soujava.org.br/download/attachments/6422628/soujava.zip

Agradecimentos:

Todos que leram até aqui, e espero tenha sido útil.

Autor:

Thomas Rafael Modeneis - Sun Certified Programmer for Java Platform, SE 5.0 - 310-055. at Elosoft S.A. thomas.modeneis@gmail.com

Equipe Sou Java, Fortalecendo a comunidade de usuários de Java do Brasil.

Adaptavist Theme Builder (3.1.4) Powered by Atlassian Confluence, the Enterprise Wiki. (Version: 2.5.4 Build:#809 Jun 12, 2007)
Free theme builder license