今天在公司用ant写了个部署web应用的脚本,闲来无事,就稍微总结一下,以供以后参照使用,也希望作为一个demo, 能对大家有启迪的作用,如果真的如此,我也就很是欣慰了。好了,言归正传,下面就开始记流水账吧!
三、使用Ant发布web应用到tomcat
下面我们以一个简单的例子,来演示如何使用Ant发布web应用到tomcat。我们假设有个很简单的web projcet,我们想使用Ant来将服务部署到tomcat,假设在web project的根目录下有个build.xml文件,我们可以如此编辑该构建文件。
<project name="demo" basedir="."> <!--定义tomcat所在目录--> <property name="webapp" value="D:/tomcat/webapps/ROOT" /> <target name="core"> <!--删除原来部署的文件--> <delete dir="${webapp}"></delete> <mkdir dir="${webapp}" /> <!--将编译后的文件拷贝到tomcat目录下--> <copy todir="${webapp}" overwrite="true"> <fileset dir="${basedir}/WebRoot"/> </copy> </target> </project> |
完事了?yes!非常简单!当然,如上代码的前提是:在eclipse+Myeclipse环境下开发,并且将自动编译开关开开,这样我们只需要将编译好的文件拷贝到tomcat目录下即可,如果不是在这种环境下开发,我们可能就需要先使用javac命令编译一下,然后再拷贝到tomcat目录下。
如果我们想把该web project中的java文件打成jar包,放置在WEB-INF/lib目录下,将其他文件拷贝到tomcat/webapps目录下,我们可以使用如下构建文件:
<project name="demo" basedir="."> <property name="webapp" value="D:/tomcat/webapps/ROOT" /> <target name="core"> <!--删除原来部署的文件--> <delete dir="${webapp}"></delete> <mkdir dir="${webapp}" /> <!--除了class文件外,其他文件拷贝到tomcat目录下--> <copy todir="${webapp}" overwrite="true"> <fileset dir="${basedir}/WebRoot" excludes="**/*.class"/> </copy> <!--将class文件打包,放到/WEB-INF/lib目录下--> <jar destfile="${webapp}/WEB-INF/lib/test.jar"> <fileset dir="${basedir}/WebRoot/WEB-INF/classes"> <include name="**/*.class" /> </fileset> </jar> </target> </project> |
怎么样?我们上面用到了copy,delete,mkdir,fileset,include,excludes这些标签,你可明白了?
查看本文来源