Ola,
Vi um pessoal aqui perguntando como fazer o deploy no tomcat usando o ANT. Abaixo tem um exemplo de como fazer, espero ajudar, se alguem quiser dar uma melhorada fiquem a vontade…
Usei esse exemplo em um Dynamic Web Project no Eclipse 3 rodando com Tomcat 5.5.27 no Windows …
Documentação do ANT
Documentação do Tomcat 5.5
[]´s
Arquivo build.properties
Aqui eu defino algumas variáveis como o home do tomcat, a pasta webapps, a url onde está o manager e login e senha…
deploy.path=D:/Apache Software Foundation/Tomcat 5.5/webapps
tomcat.home=D:/Apache Software Foundation/Tomcat 5.5
tomcat.manager.url=http://localhost:8080/manager
tomcat.manager.username=admin
tomcat.manager.password=admin
Arquivo build.xml
[code]<project name=“meu-projeto” basedir="." default=“deploy-local”>
<property file="build.properties" />
<property name="web.dir" value="war" />
<property name="src.dir" value="src" />
<property name="project.name" value="meu-projeto" />
<property name="dist.dir" value="dist" />
<property name="build.classes.dir" value="${web.dir}/WEB-INF/classes" />
<!-- define o classpath do projeto, usa os .jars presentes no Tomcat -->
<path id="master-classpath">
<fileset dir="${web.dir}/WEB-INF/lib">
<include name="**/*.jar" />
</fileset>
<fileset dir="${tomcat.home}/common/lib">
<include name="servlet*.jar"/>
<include name="jsp-api.jar"/>
<include name="mail.jar"/>
<include name="activation.jar"/>
</fileset>
<pathelement path="${build.classes.dir}"/>
</path>
<!-- compila -->
<target name="build">
<echo>Compilando...</echo>
<javac destdir="${build.classes.dir}" debug="true"
deprecation="false" optimize="false"
failonerror="true">
<src path="${src.dir}"/>
<classpath refid="master-classpath"/>
</javac>
</target>
<!-- gera o .war e copia para a pasta dist do projeto -->
<target name="create-war" depends="build">
<echo>Gerando war ...</echo>
<mkdir dir="${dist.dir}" />
<war destfile="${dist.dir}/${project.name}.war" webxml="${web.dir}/WEB-INF/web.xml">
<fileset dir="${web.dir}">
<include name="**/*.*"/>
<exclude name="**/*web.xml"/>
</fileset>
</war>
</target>
<!-- apenas copia o .war para o webapps do tomcat, precisa estar com auto-deploy para funcionar
caso contrário precisa de uma outra task para reiniciar o projeto, não precisa reiniciar o servidor -->
<target name="deploy-local" depends="create-war">
<echo>Fazendo o deploy no tomcat ...</echo>
<copy file="${dist.dir}/${project.name}.war" todir="${tomcat.home}/webapps" />
</target>
<!-- remove a pasta dist e outras que precisar -->
<target name="clean">
<echo>Removendo diretórios não usados ...</echo>
<delete dir="${dist.dir}" />
</target>
</project>[/code]