论坛首页 Java企业应用论坛

ant 部署web工程模板

浏览 3565 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-08-01  
下面的xml是ant 的构建脚本, 功能包括:  编译,部署到tomcat, 启动tomcat,停止tomcat, 重新载入。  使用前必须安装 jdk 和 ant , 然后运行ant init,初始化工程目录,  就可以进行开发了。(题外话:在这个ide工具傻瓜式开发的时代里,ant依旧显示它的优秀之处,它能完成比ide更灵活的任务, 从设计的角度说,操作越复杂的工具应是是越灵活滴 ^_^

<?xml version="1.0" encoding="UTF-8"?>
<project name="zkProject" default="compile" basedir=".">
	<property name="webapp.name"    value="zkproject"/>
	<property name="catalina.home" value="D:\Program Files\apache-tomcat-6.0.16"/>  
	<property name="src.dir"      value="${basedir}/WEB-INF/src"/>
	<property name="lib.dir"    value="${basedir}/WEB-INF/lib"/>
	<property name="class.dir"    value="${basedir}/WEB-INF/classes"/>
	<property name="webapps.dir" value="${catalina.home}/webapps"/>
	<property name="ui.dir"    value="ui"/>
	<!-- **********************************set classpath********************************** -->
	<path id="compile.classpath">
		<fileset dir="${catalina.home}/lib">
		  <include name="*.jar"/>
		</fileset>
		<fileset dir="${lib.dir}">
		  <include name="*.jar"/>
		</fileset>
	</path>
	<!-- **********************************init********************************** -->
	<target name="init">
		<mkdir dir="${src.dir}"/>
		<mkdir dir="${lib.dir}"/>
		<mkdir dir="${ui.dir}"/>
	</target>

	<!-- **********************************clean class********************************** -->
	<target name="clean" description="Delete old build and dist directories">
		<delete dir="${class.dir}"  includes="**/*.class"/> 
	</target>

	<!-- **********************************compile java********************************** -->
	<target name="compile" description="Compile Java sources" depends="clean">
		<mkdir dir="${class.dir}"/>
		<javac srcdir="${src.dir}"
			  destdir="${class.dir}">
			<classpath refid="compile.classpath"/>
		</javac>

		<copy  todir="${class.dir}">
		  <fileset dir="${src.dir}" excludes="**/*.java"/>
		</copy> 
	</target>

	<!-- **********************************deploy   webapp********************************** -->
	<target name="deploy" description="Install application to servlet container" depends="compile">
		<delete dir="${webapps.dir}/${webapp.name}"/>
		<war destfile="${webapps.dir}/${webapp.name}.war" webxml="${basedir}/WEB-INF/web.xml"> 
			<fileset dir="ui"/>
			<lib dir="${lib.dir}"/> 
			<classes dir="${class.dir}"/>			
		</war> 
	</target>  

	<!-- **********************************start  web server********************************** -->
	
	<target name="startserver" description="Start  web server" >
		<exec dir="${catalina.home}/bin" executable="cmd.exe">
			<env key="CATALINA_HOME" path="${catalina.home}"/>
			<arg value="/c startup.bat"/>
		</exec>
	</target>
	
	<!-- **********************************stop  web server********************************** -->
	
	<target name="stopserver" description="Stop  web server" >
		<exec dir="${catalina.home}/bin" executable="cmd.exe">
			<env key="CATALINA_HOME" path="${catalina.home}"/>
			<arg value="/c shutdown.bat"/>
		</exec>
	</target>
	
	<!-- **********************************start work**********************************  -->
	<target name="start" description="Clean build and dist directories, then compile">
		<ant target="deploy"/>
		<ant target="startserver"/>
	</target>
	
	<!-- **********************************reload  web server********************************** -->
	
	<target name="reload" description="reload  web server">
		<ant target="stopserver"></ant>
		<sleep seconds="2"></sleep>
		<ant target="start"></ant>
	</target>
</project>


论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics