Esta semana a Dicas-List vai tratar sobre o ANT.
O ANT � uma das ferramentas mais poderosas para a automa��o
de processos de constru��o, documenta��o e empacotamento de
projetos em Java, al�m de fazer outras tantas tarefas.

Ele j� foi tema de uma das nossas dicas (http://www.mail-
archive.com/dicas-list%40soujava.org.br/msg00042.html) e
nesta semana vamos apresentar algumas tasks bem interessantes
do ANT.

Come�ando pelo arquivo de propriedades e Javac.

- O arquivo de propriedades.

� importante utilizar um arquivo de propriedades para o ANT
permitindo um desacoplamento entre os scripts e as vari�veis
de ambiente, como caminho do diret�rio de fontes, op��es de
DEBUG, local onde est�o algumas libs, etc.
O arquivo build.xml deve conter apenas informa��es das TASKS
tentando evitar ao m�ximo depend�ncias "hard coded" para
diret�rios. � o arquivo de propriedades que permite esta
separa��o.
Veja um exemplo de um arquivo build.properties abaixo.

j2ee.home=C:\\j2sdkee1.3.1
tomcat.home=c:\\Program Files\\Apache Group\\Tomcat 4.1
deploy.dir=${tomcat.home}\\webapps
debug=true

Estas propriedades s�o carregadas pelo build.xml atrav�s da
task "property".

<property file="build.properties"/>


- O Javac
A Task Javac permite compilar todas as classes de um projeto
ou algumas classes, dependendo do filtro que for utilizado.

Uma boa dica � substituir o compilador padr�o (javac da SUN)
e Utilizar o Jikes, que tem algumas vantagens como compila�ao
mais r�pida e checagem de depend�ncias de classes de forma
mais eficiente.
Para utilizar o Jikes adicione as seguintes propriedades no
arquivo build.properties e tenha o jikes.exe acess�vel no
classpath do ANT. N�o � necess�rio nenhuma altera��o no alvo
de compila��o (JAVAC) dentro do script build.xml ao
substituir o Javac pelo Jikes.

build.compiler=jikes
build.compiler.fulldepend=true


Veja abaixo um exemplo de um arquivo de build com a task para
compila��o.


<project name="Dicas-List" default="compile">

   <property file="build.properties"/>

    <target name="init">
        <property name="src" value="src"/>
        <property name="build" value="build"/>
        <property name="classes" value="${build}/classes"/>

        <path id="project.class.path">
            <pathelement path="${src}"/>
            <pathelement path="${classes}"/>
            <pathelement path="${j2ee.home}/lib/j2ee.jar"/>
        </path>
    </target>

    <target name="prepare" depends="init">
        <mkdir dir="${build}"/>
        <mkdir dir="${classes}"/>
    </target>

    <target name="compile" depends="prepare">
        <echo message="Compilando projeto."/>
        <javac srcdir="${src}" destdir="${classes}"
debug="${debug}">
            <classpath refid="project.class.path"/>
        </javac>
    </target>
</project>

Saiba mais sobre a task JavaC em
http://ant.apache.org/manual/CoreTasks/javac.html onde
inclusive voc� encontrar� outras informa��es.
O Jikes tamb�m j� foi tema da Dicas-List http://www.mail-
archive.com/dicas-list%40soujava.org.br/msg00026.html

Bons c�digos!!!

______________________________________________________________
________________
Handerson Ferreira Gomes
Summa Technologies
Boletim Dicas Java - Sua dose di�ria de Java.



---
UOL, o melhor da Internet
http://www.uol.com.br/


================================================================================
[dicas-list] circula diariamente com pequenas dicas sobre a plataforma Java e �
mais um servi�o da Sociedade de Usu�rios Java - http://www.soujava.org.br
      *** SouJava - Fortalecendo a Comunidade Java Brasileira! ***
- Para contribuir com uma dica, envie um e-mail para [EMAIL PROTECTED]
- Participe de outras listas de discuss�o sobre a linguagem Java.
  Saiba mais em http://www.soujava.org.br/lista.htm
--------------------------------------------------------------------------------
- Para assinar este boletim: mailto:[EMAIL PROTECTED]
- Para cancelar sua assinatura: mailto:[EMAIL PROTECTED]
- Dicas anteriores: http://www.mail-archive.com/dicas-list%40soujava.org.br
- Para discutir sobre as dicas, acesse o Mundo OO (http://www.mundooo.com.br)


Responder a