Boa Tarde Galerinha, tudo bem ???
Eu sou nova no fórum, mas tenho alguma experiência em java. Estou com uma tremenda dúvida para alterar o meu script BUILD.XML (ANT).
Eu tenho um projeto WEB , gerado pelo eclipse (estrutura de pastas padrão web), que roda no Jboss. Até aí tudo bem.
Agora eu preciso “customizar” o meu empacotamento (war) através de um script ANT (build.xml) para fazer a seguinte coisa:
1- ao gerar o .WAR, gostaria que o ANT colocasse minhas classes dentro de um .jar (meuProjeto.jar) e depois colocasse esse jar dentro da pasta LIB.
2- ao gerar o .WAR, gostaria que o ANT removesse as extensões .jrxml (relatório feito no iReport) e deixasse apenas .jasper
3- ao gerar o .WAR, gostaria de ter duas opções, uma que gera um WAR para PRODUCAO e outra que gera um WAR para HOMOLOGACAO (com alguns arquivos de configuracao diferentes).
Dentro da minha pasta WEB-INF, eu tenho uma subpasta chamada “spring” e nela eu tenho dois arquivos (applicationContextProducao.xml e applicationContextHomologacao.xml)
A idéia é ao selecionar a opcao no build de deploy producao, ele empacota o war com o arquivo applicationContextProducao.xml e o renomeia para applicationContext.xml
e o mesmo seria para a homologacao, ao selecionar a opcao homologacao, ele ele empacota o war com o arquivo applicationContextHomologacao.xml e o renomeia para applicationContext.xml
Abaixo tem o meu script BUILD original, funciona bem, mas ele gera o war da mesma forma que eu mandar o eclipse exportar o “.war file”
<?xml version="1.0" encoding="ISO-8859-1"?>
<project name="Deploy From Eclipse to Jboss" basedir=".">
<property name="warfile" value="minhaAplicacao" />
<property name="deploy.dir" value="C:\jboss\server\default\deploy" />
<property name="diretorio.war" value="dist" />
<target name="create">
<mkdir dir="dist" />
<war destfile="${diretorio.war}/${warfile}.war" webxml="WebContent/WEB-INF/web.xml" update="true">
<classes dir="build\classes" />
<fileset dir="WebContent">
<exclude name="WEB-INF/web.xml" />
</fileset>
</war>
</target>
<target name="copy">
<copy todir="${deploy.dir}" overwrite="true">
<fileset dir=".">
<include name="*.war" />
</fileset>
</copy>
</target>
<target name="deploy">
<antcall target="create" />
<antcall target="copy" />
</target>
<target name="unpack">
<unwar src="${warfile}.war" dest="${warfile}" />
</target>
<target name="clean">
<delete dir="dist" />
</target>
</project>
Agradeço pela atenção de vocês.
Bjks,
Paula