ANT工具管理struts等web应用
来源:互联网 发布:杭州天迈网络怎么样 编辑:程序博客网 时间:2024/06/06 09:28
app.home-----------+ --Web应用项目的顶层目录 +----build ---存放由Ant工具生成的web应用的开放目录结构 +----deploy ---存放由Ant工具生成的web应用的WAR文件 +----doc ---存放由Ant工具生成的JavaDoc文件 +----lib ---存放所有的Jar文件 +----classes --存放由Ant编译生成的.class文件 +----src ----存放Java源文件和属性文件 +----webRoot(或者是web) ---存放web应用的jsp,html 和 图片 以及css和js文件 | | +----web_INF ----存放web.xml,struts.xml,和TLD文件等
<project name ="HelloApp" default="help" basedir="."> <!-- ===============property定义=============== --> <property file="build.properties"/> <property file="app.home" value="."/> <property file="app.name" value="HelloApp"/> <property file="javadoc.pkg.top" value="hello"/> <property file="src.home" value="${app.home}/src"/> <property file="lib.home" value="${app.home}/lib"/> <property file="classes.home" value="${app.home}/classes"/> <property file="deploy.home" value="${app.home}/deploy"/> <property file="doc.home" value="${app.home}/doc"/> <property file="web.home" value="${app.home}/web"/> <property file="build.home" value="${app.home}/build"/> <property file="build.classes" value="${build.home}/WEB-INF/classes"/> <property file="build.lib" value="${build.home}/WEB-INF/lib"/> <!-- ===============编译路径compilation classpath=============== --> <path id="compile.classpath"> <pathelement location="${classes.home}"/> <fileset dir="${lib.home}"> <include name="*.jar"> <include name="*.zip"> </fileset> <fileset dir="${tomcat.home}/common/lib"> <include name="*.jar"> </fileset> <pathelement location="${tomcat.home}/common/lib"/> </path> <!-- ==============="clean-all" Target=============== --> <target name="clean-all"> <delete dir="${build.home}"/> <delete dir="${classes.home}"/> <delete dir="${deploy.home}"/> <!-- 如果tomcat running,是不能delete的 --> <delete dir="${webapps.home}/${app.name}" failonerror="false"/> <!-- 如果tomcat running,是不能delete的 --> <delete dir="${webapps.home}/${app.name}.war"/> <delete dir="${doc.home}"/> </target> <!-- ==============="prepare" Target=============== --> <target name="prepare"> <mkdir dir="${classes.home}"/> <mkdir dir="${deploy.home}"/> <mkdir dir="${doc.home}"/> <mkdir dir="${doc.home}/api"/> <mkdir dir="${build.home}/WEB-INF"/> <mkdir dir="${build.home}/WEB-INF/classes"/> <mkdir dir="${build.home}/WEB-INF/lib"/> </target> <!-- ==============="compile" Target=============== --> <target name="compile" depends="prepare"> <javac srcdir="${src.home}" destdir="${classes.home}" debug="yes"/> <classpath refid="compile.classpath"/> </javac> </target> <!-- ==============="build" Target=============== --> <target name="build" depends="compile"> <!-- 拷贝webapp content下的jsp,html,tld,xml等,也会拷贝META-INF目录的 --> <copy todir="${build.home}"> <fileset dir="${web.home}"/> </copy> <!-- 现在开始拷贝所有的java class文件 --> <copy todir="${build.home}/WEB-INF/classes"/> <fileset dir="${classes.home}"/> </copy> <!-- 现在开始拷贝src下的所有配置文件 --> <copy todir="${build.home}/WEB-INF/classes"> <fileset dir="${src.home}"/> <include name="**/*.properties"/> <include name="**/*.prop"/> </fileset> </copy> <!-- 现在开始拷贝所有的jar配置文件 --> <copy todir="${build.home}/WEB-INF/lib"> <fileset dir="${lib.home}"/> </copy> <!-- 现在开始打包成war包 --> <jar jarfile="${deploy.home}/${app.name}.war" basedir="${build.home}"/> </target> <!-- ==============="deploy" Target=============== --> <target name="deploy" depends="build"> <copy todir="${webapp.home}" file="${deploy.home}/${app.name}.war"/> </target> <!-- ==============="doc" Target=============== --> <target name="javadoc" depends="compile"> <javadoc sourcepath="${src.home}" destdir="${doc.home}" packagenames="${javadoc.pkg.top}.*"/> </target> </project>