<?xml version="1.0"?>
<!--全局变量-->
<project basedir="." name="ec_mm_new" default="dev">
<property name="src.dir" value="${basedir}" />
<property name="build.dir" value="${basedir}/build" />
<property name="lib.dir" value="${basedir}/WebRoot/WEB-INF/lib" />
<property name="config.dir" value="${basedir}/conf" />
<property name="log.file" value="log4j.properties" />
<property name="config.file" value="application.properties" />
<property name="auth.file" value="filter.properties" />
<property name="hibernate.file" value="hibernate.cfg.xml" />
<path id="classpath">
<fileset dir="${basedir}/WebRoot/WEB-INF/lib">
<include name="**/*.jar" />
</fileset>
</path>
<!—每一个独立的打包,传入自己的变量 -->
<target name="dev" description="Build the dev version for deployment">
<property name="resourceFile" value="application.dev.properties" />
<property name="authFile" value="filter.dev.properties" />
<property name="cfgHibernate" value="hibernate.dev.cfg.xml" />
<property name="logFile" value="log4j.dev.properties" />
<property name="dist.dir" value="D:\myTomcat\webapps" />
<antcall target="webapp" />
<antcall target="post_build" />
</target>
<target name="qa" description="Build the test version for deployment">
<property name="resourceFile" value="application.qa.properties" />
<property name="authFile" value="filter.qa.properties" />
<property name="cfgHibernate" value="hibernate.qa.cfg.xml" />
<property name="logFile" value="log4j.qa.properties" />
<property name="dist.dir" value="${basedir}/dist" />
<antcall target="webapp" />
<antcall target="post_build" />
</target>
<target name="prod" description="Build the prod version for deployment">
<property name="resourceFile" value="application.prod.properties" />
<property name="authFile" value="filter.prod.properties" />
<property name="cfgHibernate" value="hibernate.prod.cfg.xml" />
<property name="logFile" value="log4j.prod.properties" />
<property name="dist.dir" value="${basedir}/dist" />
<antcall target="webapp" />
<antcall target="post_build" />
</target>
<target name="init">
<mkdir dir="${build.dir}" />
<mkdir dir="${build.dir}/jsp" />
<mkdir dir="${build.dir}/WEB-INF" />
<mkdir dir="${build.dir}/WEB-INF/classes" />
<mkdir dir="${build.dir}/WEB-INF/lib" />
</target>
<!—编译-->
<target name="web.compile">
<javac srcdir="${src.dir}" destdir="${build.dir}/WEB-INF/classes"
encoding="GBK" includeantruntime="on">
<include name="**/*.java"/>
<classpath refid="classpath"/>
</javac>
</target>
<!—打包,先复制文件到build-->
<target name="webapp" depends="clean, init, web.compile">
<copy file="${config.dir}/${resourceFile}"
tofile="${build.dir}/WEB-INF/classes/${config.file}" overwrite="true" />
<copy file="${config.dir}/${authFile}"
tofile="${build.dir}/WEB-INF/classes/${auth.file}" overwrite="true" />
<copy file="${config.dir}/${logFile}"
tofile="${build.dir}/WEB-INF/classes/${log.file}" overwrite="true" />
<copy file="${config.dir}/${cfgHibernate}"
tofile="${build.dir}/WEB-INF/classes/${hibernate.file}" overwrite="true" />
<copy todir="${build.dir}/WEB-INF/classes" overwrite="true">
<fileset dir="${basedir}/src/">
<include name="*.xml"/>
</fileset>
</copy>
<copy todir="${build.dir}" overwrite="true">
<fileset dir="${basedir}/WebRoot">
<exclude name="javaee.jar"/>
<exclude name="jsf-api.jar"/>
<exclude name="jsf-impl.jar"/>
<exclude name="jstl-1.2.jar"/>
<exclude name="WEB-INF/classes/**/*.*"/>
</fileset>
</copy>
<!—打包,把build下所有内容打成war包-->
<jar destfile="${dist.dir}/${ant.project.name}.war" basedir="${build.dir}" />
</target>
<target name="post_build">
<delete dir="${build.dir}" />
</target>
<target name="clean">
<delete dir="${build.dir}" />
<delete file="${dist.dir}/${ant.project.name}.war" />
<delete dir="${dist.dir}/${ant.project.name}" />
</target>
</project>
Java Ant一例
最新推荐文章于 2024-09-27 00:45:01 发布