知行天下 2011-05-03
<?xml version="1.0"?> <project name="myProject" default="war" basedir="."> <property name="classes" value="webroot/WEB-INF/classes"/> <property name="build" value="${basedir}/dist"/> <property name="lib" value="webroot/WEB-INF/lib"/> <property name="webDir" value="webroot"/> <path id="webclasspath"> <fileset dir="${webDir}/WEB-INF/lib" includes="**/*.jar"/> <fileset dir="${webDir}/WEB-INF/TomcatLib" includes="**/*.jar"/> </path> <!-- 删除build路径--> <target name="clean"> <delete dir="${build}"/> </target> <!-- 建立build/classes路径,并编译class文件到build/classes路径下--> <target name="compile" depends="clean"> <mkdir dir="${build}"/> <javac encoding="utf-8" srcdir="src" destdir="${classes}" classpathref="webclasspath"/> </target> <!-- 打war包--> <target name="war" depends="compile"> <mkdir dir="${build}"/> <war destfile="${build}/myProject.war" webxml="webroot/WEB-INF/web.xml"> <!-- 拷贝WebRoot下所有目录的jsp文件--> <fileset dir="${webDir}" includes="**/*.jsp" excludes="${webDir}/work/*.*"/> <!--拷贝WebRoot下所有目录的JS文件--> <fileset dir="${webDir}" includes="**/*.js" excludes="${webDir}/work/*.*"/> <!--拷贝WebRoot下所有目录的css文件--> <fileset dir="${webDir}" includes="**/*.css" excludes="${webDir}/work/*.*"/> <!--拷贝WebRoot下所有目录的xml文件--> <fileset dir="${webDir}" includes="**/*.xml" excludes="${webDir}/work/*.*"/> <!--拷贝WebRoot下所有目录的tld文件--> <fileset dir="${webDir}" includes="**/*.tld" excludes="${webDir}/work/*.*"/> <!--拷贝WebRoot下所有目录的xsd文件--> <fileset dir="${webDir}" includes="**/*.xsd" excludes="${webDir}/work/*.*"/> <!-- 拷贝lib目录下的jar包--> <lib dir="${lib}" includes="**/*.jar" excludes="${webDir}/work/*.*"/> <!-- 拷贝build/classes下的class文件--> <classes dir="${classes}" includes="**/*.class" excludes="${webDir}/work/*.*"/> </war> </target> </project>
其中classpathref classpath区别的在于:
classpathref 引用ant脚本定义的
classpath 引用的是直接的jar/class文件