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: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:<developers>
<developer>
<id>thomasmodeneis</id>
<name>Thomas Rafael Modeneis</name>
<email>thomas.modeneis@soujava.org.br</email>
<organization>Sou Java</organization>
<organizationUrl>http: </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.