下面的xml是ant 的构建脚本, 功能包括: 编译,部署到tomcat, 启动tomcat,停止tomcat, 重新载入。 使用前必须安装 jdk 和 ant , 然后运行ant init,初始化工程目录, 就可以进行开发了。(题外话:在这个ide工具傻瓜式开发的时代里,ant依旧显示它的优秀之处,它能完成比ide更灵活的任务, 从设计的角度说,操作越复杂的工具应是是越灵活滴 ^_^
- <projectname="zkProject"default="compile"basedir=".">
- <propertyname="webapp.name"value="zkproject"/>
- <propertyname="catalina.home"value="D:/ProgramFiles/apache-tomcat-6.0.16"/>
- <propertyname="src.dir"value="${basedir}/WEB-INF/src"/>
- <propertyname="lib.dir"value="${basedir}/WEB-INF/lib"/>
- <propertyname="class.dir"value="${basedir}/WEB-INF/classes"/>
- <propertyname="webapps.dir"value="${catalina.home}/webapps"/>
- <propertyname="ui.dir"value="ui"/>
- <!--**********************************setclasspath**********************************-->
- <pathid="compile.classpath">
- <filesetdir="${catalina.home}/lib">
- <includename="*.jar"/>
- </fileset>
- <filesetdir="${lib.dir}">
- <includename="*.jar"/>
- </fileset>
- </path>
- <!--**********************************init**********************************-->
- <targetname="init">
- <mkdirdir="${src.dir}"/>
- <mkdirdir="${lib.dir}"/>
- <mkdirdir="${ui.dir}"/>
- </target>
- <!--**********************************cleanclass**********************************-->
- <targetname="clean"description="Deleteoldbuildanddistdirectories">
- <deletedir="${class.dir}"includes="**/*.class"/>
- </target>
- <!--**********************************compilejava**********************************-->
- <targetname="compile"description="CompileJavasources"depends="clean">
- <mkdirdir="${class.dir}"/>
- <javacsrcdir="${src.dir}"
- destdir="${class.dir}">
- <classpathrefid="compile.classpath"/>
- </javac>
- <copytodir="${class.dir}">
- <filesetdir="${src.dir}"excludes="**/*.java"/>
- </copy>
- </target>
- <!--**********************************deploywebapp**********************************-->
- <targetname="deploy"description="Installapplicationtoservletcontainer"depends="compile">
- <deletedir="${webapps.dir}/${webapp.name}"/>
- <wardestfile="${webapps.dir}/${webapp.name}.war"webxml="${basedir}/WEB-INF/web.xml">
- <filesetdir="ui"/>
- <libdir="${lib.dir}"/>
- <classesdir="${class.dir}"/>
- </war>
- </target>
- <!--**********************************startwebserver**********************************-->
- <targetname="startserver"description="Startwebserver">
- <execdir="${catalina.home}/bin"executable="cmd.exe">
- <envkey="CATALINA_HOME"path="${catalina.home}"/>
- <argvalue="/cstartup.bat"/>
- </exec>
- </target>
- <!--**********************************stopwebserver**********************************-->
- <targetname="stopserver"description="Stopwebserver">
- <execdir="${catalina.home}/bin"executable="cmd.exe">
- <envkey="CATALINA_HOME"path="${catalina.home}"/>
- <argvalue="/cshutdown.bat"/>
- </exec>
- </target>
- <!--**********************************startwork**********************************-->
- <targetname="start"description="Cleanbuildanddistdirectories,thencompile">
- <anttarget="deploy"/>
- <anttarget="startserver"/>
- </target>
- <!--**********************************reloadwebserver**********************************-->
- <targetname="reload"description="reloadwebserver">
- <anttarget="stopserver"></ant>
- <sleepseconds="2"></sleep>
- <anttarget="start"></ant>
- </target>
- </project>