ant 打包总结

<?xml version="1.0" encoding="UTF-8"?>

<project basedir="." default="appbuild" name="MyApp">

<property file="build.properties" />

 

<!--编译classpath设置 -->

<path id="build.classpath">

<fileset dir="WebRoot/WEB-INF/lib">

<include name="**/*.jar" />

</fileset>

<pathelement path="${webapp.build.classesdir}" />

</path>

 

<!-- 以下代码为自动打包 -->

<target name="appbuild" depends="ant">

<echo message="生成产品安装包..." />

<!--放入运行包-->

<copy file="${webapp.output}/${webapp.version}.tar.gz" todir="${webapp.output}" failοnerrοr="true" />

</target>

 

<!-- 清除文件夹 编译build、output安装包-->

<target name="clean">

<delete dir="${webapp.build}" />

<delete dir="${webapp.output}" />

<mkdir dir="${webapp.build}" />

<mkdir dir="${webapp.output}" />

</target>

 

<!-- jetty解包-->

<target name="untarjetty">

<gunzip src="${webapp.jetty}.gz" dest="${webapp.output}" />

<untar src="${webapp.output}/MyApp.tar" dest="${webapp.output}/install" overwrite="true" />

<delete file="${webapp.output}/MyApp.tar">

</delete>

</target>

 

<!-- java源码编译-->

<target name="compile">

<mkdir dir="${webapp.build.classesdir}" />

 

<javac debug="on" deprecation="yes" destdir="${webapp.build.classesdir}"  includes="**" optimize="on" srcdir="src">

<classpath refid="build.classpath" />

<compilerarg line="-encoding UTF-8 " />

</javac>

</target>

 

<!-- 编译打包-->

<target name="webbuild" depends="clean,untarjetty,compile">

<copy todir="${webapp.output}/install/db_script">

<fileset dir="${webapp}/db_script/"></fileset>

</copy>

 

<mkdir dir="${webapp.output.webctx}" />

<touch file="${webapp.output.webctx}/${webapp.version}.version"/>

<!-- 拷贝原工程下的webroot到待打包的目录-->

<copy todir="${webapp.output.webctx}">

<fileset dir="${webapp.src.WebRoot}/">

</fileset>

</copy>

 

<!-- 拷贝源码编译后的相关class和resource配置文件到待打包的目录-->

<copy todir="${webapp.output.webctx}/WEB-INF/classes/">

<fileset dir="${webapp.build.classesdir}">

<exclude name="**/*.src" />

</fileset>

 

<fileset dir="${webapp}/conf">

<include name="**/*.properties" />

<include name="**/*.xml" />

<include name="**/*.txt" />

</fileset>

</copy>

 

<!-- jar拷贝-->

<copy todir="${webapp.output.webctx}/WEB-INF/lib">

<fileset dir="${webapp.lib}" />

</copy>

 

<!-- 源码conf配置文件拷贝到打包的jetty目录-->

<delete dir="${webapp.output}/conf">

</delete>

<copy todir="${webapp.output}/install/MyApp-jetty/MyApp/conf" overwrite="true">

<fileset dir="${webapp}/MyApp/conf">

<exclude name="**/*.svn" />

</fileset>

</copy>

</target>

 

<!-- 配置文件xml拷贝-->

<target name="ant" depends="webbuild">

<!--生成WAR包-->

<zip destfile="${webapp.output}/MyApp.war" basedir="${webapp.output.webctx}" encoding="UTF-8" />

 

<delete dir="${webapp.output.webctx}/WEB-INF/lib/WEB-INF" />

<tar destfile="${webapp.output}/${webapp.version}.tar">

<tarfileset dir="${webapp.output}/install" preserveLeadingSlashes="true">

</tarfileset>

</tar>

<gzip destfile="${webapp.output}/${webapp.version}.tar.gz" src="${webapp.output}/${webapp.version}.tar" />

<delete file="${webapp.output}/${webapp.version}.tar" />

<delete dir="${webapp.output}/install" />

<delete dir="${webapp.build}" />

</target>

</project>

 

build.properties:

 

appname=myApp

###########################################################

#fuc global variables

###########################################################

webapp=${basedir}

webapp.version=DEPGM_V100R001B03

webapp.main=${webapp}/src/

webapp.java=${webapp.main}

webapp.test=${webapp}/test/

webapp.src.confpath=${webapp}/conf

webapp.src.WebRoot=${webapp}/WebRoot

webapp.build=${webapp}/build

webapp.script=${webapp}/tools/deploy_script

webapp.table=${webapp}/tools/configureTable

webapp.build.classesdir=${webapp.build}/classes

webapp.build.test.classesdir=${webapp.build}/test/classes

webapp.jetty=${basedir}/tools/myApp.tar

webapp.lib=${webapp.src.WebRoot}/WEB-INF/lib

 

webapp.output=${webapp}/output

webapp.output.software=${webapp.output}/software

webapp.output.webctx=${webapp.output}/install/myApp-jetty/webapps/myApp

app.tools=${basedir}/tools

 

compile.debug=true

compile.optimize=true

compile.encoding=UTF-8

compile.deprecation=false

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值