基础basic.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<project>
<property file="build.properties"/>
<property name="src.dir" location="src"/>
<property name="test.src.dir" location="test"/>
<property name="web.dir" location="web"/>
<property name="sql.dir" location="sql"/>
<property name="web.WEB-INF.dir" location="${web.dir}/WEB-INF"/>
<property name="lib.dir" location="${web.WEB-INF.dir}/lib"/>
<property name="run.test.className" value="**/Test*.class"/>
<property name="build.dir" location="build"/>
<property name="build.src.dir" location="${build.dir}/src"/>
<property name="build.src.classes.dir" location="${build.dir}/classes"/>
<property name="build.test.dir" location="${build.dir}/test"/>
<property name="build.test.src.dir" location="${build.test.dir}/src"/>
<property name="build.test.classes.dir" location="${build.test.dir}/classes"/>
<property name="build.test.report" location="${build.test.dir}/report"/>
<property name="build.jar.dir" location="${build.dir}/dist"/>
<property name="build.zip.dir" location="${build.dir}/zip"/>
<property name="build.doc.dir" location="${build.dir}/doc"/>
<property name="metadata" location="metadata"/>
<property environment="env"></property>
<path />
</sql>
<Task/>
</sequential>
</macrodef>
</project>
属性文件 build.properties
ftp.username=zl
ftp.password=123456
ftp.server=localhost
ftp.dir=user_manager
project.version=SNAPSHOT_0.1
project.name=usermanager
project.prefix=${project.name}_${project.version}
project.jar.name=${project.prefix}.jar
project.zip.name=${project.prefix}.zip
module.version=SNAPSHOT_0.1
dao.jar.name=user-dao-${module.version}.jar
service.jar.name=user-service-${module.version}.jar
controller.jar.name=user-controller-${module.version}.jar
model.jar.name=user-model-${module.version}.jar
captcha.jar.name=user-captcha-${module.version}.jar
web.name=user
databaseDriver=com.mysql.jdbc.Driver
root.username=root
root.password=root
username=ant_test
password=ant123
mysql.url=jdbc:mysql://localhost:3306/
使用文件build.xml
<?xml version="1.0" encoding="UTF-8"?>
<project>
<import file="basic.xml" />
<target name="clean">
<cleanProject />
</target>
<target name="initDir" depends="clean">
<initDir>
<inittask>
<!--编译的次数和时间-->
<buildnumber/>
<propertyfile file="${metadata}/build.properties">
<entry key="Build-time" type="date" value="now" pattern="yyyy-MM-dd HH:mm:ss" />
<entry key="Build-number" type="int" value="${build.number}" />
</propertyfile>
</inittask>
</initDir>
</target>
<target name="compile" depends="initDir">
<compileSrcFile>
<compiletask>
<echo>拷贝配置文件</echo>
<copy todir="${build.src.classes.dir}">
<fileset dir="${src.dir}" includes="**/*.xml,**/*.properties" />
</copy>
</compiletask>
</compileSrcFile>
</target>
<target name="compile-test" depends="compile">
<compileTestSrcFile />
</target>
<target name="createDatabase" depends="compile-test">
<createdatabase/>
</target>
<target name="run-test" depends="createDatabase">
<runTest />
</target>
<target name="docs" depends="run-test">
<docFiles/>
</target>
<target name="jarFiles" depends="docs">
<jarFile dest="${build.jar.dir}/${model.jar.name}" package="model"/>
<jarFile dest="${build.jar.dir}/${dao.jar.name}" package="dao"/>
<jarFile dest="${build.jar.dir}/${service.jar.name}" package="service"/>
<jarFile dest="${build.jar.dir}/${captcha.jar.name}" package="captcha"/>
</target>
<target name="copyFiles" depends="jarFiles">
<copyFile/>
</target>
<target name="war" depends="copyFiles">
<warFile/>
</target>
<target name="zipFiles" depends="war">
<zipFile/>
</target>
<target name="DeployWar" depends="zipFiles">
<deployWar/>
</target>
<target name="end" depends="DeployWar">
<echo>整个过程结束</echo>
</target>
</project>