2011-11-16
ant 构建的一个demo
build.xml 写道
<?xml version="1.0" encoding="UTF-8"?>
<project name="ant_test" default="build" basedir=".">
<!--
定义全局变量 对于xml来说第一种明确指出闭合标签和第二种在后面加/都是可以识别的 basedir的这种声明指代当前工程的目录
-->
<property name="appdir" value="${basedir}/appdir">
</property>
<property name="appdoc" value="${basedir}/appdoc" />
<property name="archivejar" value="${basedir}/archieve"></property>
<!-- 定义源文件的全局变量 -->
<property name="srcdir" value="${basedir}/src/com"></property>
<property name="srclib" value="${basedir}/WebRoot/lib"></property>
<!-- 定义编译后的文件的全局变量 -->
<property name="buliddir" value="${basedir}/build"></property>
<property name="buildclass" value="${buliddir}/classes"></property>
<property name="builddoc" value="${buliddir}/docs"></property>
<property name="bulidlib" value="${buliddir}/libs"></property>
<!-- 创建classpath -->
<path id="classpath">
<!--本地的class文件 -->
<pathelement location="${buildclass}">
</pathelement>
<!-- jar包中的文件 -->
<pathelement path="${buildlib}">
</pathelement>
</path>
<!-- 创建target 在ant中 target就是一系列的任务其中一项任务可能会依赖于其他的任务,因此depends可能会很多 -->
<target name="init">
<!--删除目录文件 -->
<delete dir="${appdir}">
</delete>
<delete dir="${appdoc}">
</delete>
<!-- 创建目录 -->
<mkdir dir="${appdir}" />
<mkdir dir="${appdoc}" />
<mkdir dir="${archivejar}"></mkdir>
<mkdir dir="${buildclass}"></mkdir>
<mkdir dir="${builddoc}"></mkdir>
<mkdir dir="${bulidlib}"></mkdir>
</target>
<!-- 创建打包文件 -->
<target name="build" depends="init">
<javac srcdir="${srcdir}" destdir="${buildclass}">
<classpath refid="classpath">
</classpath>
</javac>
</target>
<target name="archieve" depends="build">
<jar basedir="${buildclass}" jarfile="${archivejar}/archieve.jar">
</jar>
</target>
<!--
<target name="javadoc" depends="archieve">
<javadoc packagenames="com.×"
sourcepath="${srcdir}"
defaultexcludes="yes"
destdir="${builddoc}"
author="true"
version="true"
use="true"
>
<doctitle><![CDATA[<h1>hello ant Docs API</h1>]]></doctitle>
<bottom><![CDATA[<i>wangsheng</i>]]></bottom>
<tag name="todo" scope="all" deion="To do:" />
</javadoc>
</target>
-->
</project>
<project name="ant_test" default="build" basedir=".">
<!--
定义全局变量 对于xml来说第一种明确指出闭合标签和第二种在后面加/都是可以识别的 basedir的这种声明指代当前工程的目录
-->
<property name="appdir" value="${basedir}/appdir">
</property>
<property name="appdoc" value="${basedir}/appdoc" />
<property name="archivejar" value="${basedir}/archieve"></property>
<!-- 定义源文件的全局变量 -->
<property name="srcdir" value="${basedir}/src/com"></property>
<property name="srclib" value="${basedir}/WebRoot/lib"></property>
<!-- 定义编译后的文件的全局变量 -->
<property name="buliddir" value="${basedir}/build"></property>
<property name="buildclass" value="${buliddir}/classes"></property>
<property name="builddoc" value="${buliddir}/docs"></property>
<property name="bulidlib" value="${buliddir}/libs"></property>
<!-- 创建classpath -->
<path id="classpath">
<!--本地的class文件 -->
<pathelement location="${buildclass}">
</pathelement>
<!-- jar包中的文件 -->
<pathelement path="${buildlib}">
</pathelement>
</path>
<!-- 创建target 在ant中 target就是一系列的任务其中一项任务可能会依赖于其他的任务,因此depends可能会很多 -->
<target name="init">
<!--删除目录文件 -->
<delete dir="${appdir}">
</delete>
<delete dir="${appdoc}">
</delete>
<!-- 创建目录 -->
<mkdir dir="${appdir}" />
<mkdir dir="${appdoc}" />
<mkdir dir="${archivejar}"></mkdir>
<mkdir dir="${buildclass}"></mkdir>
<mkdir dir="${builddoc}"></mkdir>
<mkdir dir="${bulidlib}"></mkdir>
</target>
<!-- 创建打包文件 -->
<target name="build" depends="init">
<javac srcdir="${srcdir}" destdir="${buildclass}">
<classpath refid="classpath">
</classpath>
</javac>
</target>
<target name="archieve" depends="build">
<jar basedir="${buildclass}" jarfile="${archivejar}/archieve.jar">
</jar>
</target>
<!--
<target name="javadoc" depends="archieve">
<javadoc packagenames="com.×"
sourcepath="${srcdir}"
defaultexcludes="yes"
destdir="${builddoc}"
author="true"
version="true"
use="true"
>
<doctitle><![CDATA[<h1>hello ant Docs API</h1>]]></doctitle>
<bottom><![CDATA[<i>wangsheng</i>]]></bottom>
<tag name="todo" scope="all" deion="To do:" />
</javadoc>
</target>
-->
</project>