以前写书的时候写的一个案例,如果应用于实际的项目还需要改进,应一个网友的要求贴上来,仅供参考
<?xml version="1.0" encoding="GB2312" ?>
<project name="dailybuild" default="main">
<!--tomcat的路径-->
<property name="tomcathome.dir"
value="C:\Program Files\Apache Software Foundation\Tomcat 5.0\"/>
<!--tomcat管理控制台路径-->
<property name="tomcathome.mgr.dir" value="http://127.0.0.1:8080/manager/"/>
<!--tomcat管理控制台用户名-->
<property name="tomcat.username" value="admin"/>
<!--tomcat管理控制台密码-->
<property name="tomcat.password" value=""/>
<!--tomcat中-->
<property name="cownewwebpath" value="/CownewPISWeb"/>
<!--Web应用的路径-->
<property name="cownewwebhome.dir"
value="${tomcathome.dir}webapps\CownewPISWeb\"/>
<!--Web应用的源码路径(主要供稍后的编译用)-->
<property name="cownewwebhome.java.dir"
value="${cownewwebhome.dir}WEB-INF\java\"/>
<!--Web应用输出的class路径-->
<property name="cownewwebhome.classes.dir"
value="${cownewwebhome.dir}WEB-INF\classes\"/>
<!--CVS根路径-->
<property name="cvsRoot" value=":pserver:杨中科:123456@192.168.1.6:/cvsrep"/>
<!--代码检出的路径-->
<property name="cvs.outtemp.dir" value="${cownewwebhome.dir}cvsout/"/>
<!--BVT测试(冒烟测试)的测试结果输出的路径-->
<property name="bvt.output.dir" value="c:/bvtreport/"/>
<taskdef name="stopTomcat" classname="org.apache.catalina.ant.StopTask">
<classpath>
<path location="${tomcathome.dir}/server/lib/catalina-ant.jar"/>
</classpath>
</taskdef>
<taskdef name="startTomcat" classname="org.apache.catalina.ant.StartTask">
<classpath>
<path location="${tomcathome.dir}/server/lib/catalina-ant.jar"/>
</classpath>
</taskdef>
<taskdef
name="sendBuildEmail" classname="com.cownew.dailybuild.taskdefs.DailyBuildMailTask">
<classpath>
<path location="../lib/ant-dailybuild.jar"/>
</classpath>
</taskdef>
<target name="main">
<echo>停止Tomcat</echo>
<stopTomcat url="${tomcathome.mgr.dir}" username="${tomcat.username}"
password="${tomcat.password}" path="${cownewwebpath}"/>
<echo>清除原有构建文件</echo>
<delete dir="${cownewwebhome.dir}"/>
<echo>开始从CVS下拉代码</echo>
<mkdir dir="${cvs.outtemp.dir}"/>
<cvs cvsRoot="${cvsRoot}" package="CownewPISWeb" dest="${cvs.outtemp.dir}"/>
<mkdir dir="${cownewwebhome.dir}"/>
<copy todir="${cownewwebhome.dir}">
<fileset dir="${cvs.outtemp.dir}CownewPISWeb/WebContent/"/>
</copy>
<mkdir dir="${cownewwebhome.java.dir}"/>
<copy todir="${cownewwebhome.java.dir}">
<fileset dir="${cvs.outtemp.dir}CownewPISWeb/src/"/>
</copy>
<delete dir="${cvs.outtemp.dir}"/>
<echo>开始编译源代码</echo>
<mkdir dir="${cownewwebhome.classes.dir}"/>
<javac srcdir="${cownewwebhome.java.dir}" destdir="${cownewwebhome.classes.dir}" >
<classpath>
<pathelement location="E:\保留文档\java\常用包\junit-3.8.1.jar" />
<pathelement location="E:\保留文档\java\常用包\struts.jar" />
<pathelement location="E:\保留文档\java\常用包\log4j.jar" />
<pathelement location="E:\保留文档\java\常用包\dom4j.jar" />
</classpath>
</javac>
<delete dir="${cownewwebhome.java.dir}"/>
<echo>启动Tomcat</echo>
<startTomcat url="${tomcathome.mgr.dir}" username="${tomcat.username}"
password="${tomcat.password}" path="${cownewwebpath}"/>
<echo>开始冒烟测试</echo>
<delete>
<fileset dir="${bvt.output.dir}"
includes="*.*"
defaultexcludes="false"/>
</delete>
<junit>
<classpath>
<pathelement location="E:\保留文档\java\常用包\junit-3.8.1.jar"/>
<pathelement location="${cownewwebhome.classes.dir}"/>
</classpath>
<formatter type="brief" usefile="true"/>
<batchtest todir="${bvt.output.dir}">
<fileset dir="${cownewwebhome.classes.dir}">
<include name="**/bvt/*.class" />
</fileset>
</batchtest>
</junit>
<echo>开始发送构建结果邮件</echo>
<sendBuildEmail smtpHost="smtp.mycompany.com" smtpUserId="scmheader" smtpPassword="123456"
senderEmail="scmheader@mycompany.com" title="日构建已经完成"
jdbcClass="net.sourceforge.jtds.jdbc.Driver"
dbUrl="jdbc:jtds:sqlserver://127.0.0.1/dailybuild;user=sa">
日构建已经完成,请到此处查看构建日志:\\192.168.1.15\dailybuild\result.log
点击此处查看冒烟测试结果: \\192.168.1.15\bvtreport\
</sendBuildEmail>
</target>
</project>