首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 其他相关 >

用Ant封装war的简单流程

2012-11-26 
用Ant打包war的简单流程原文:http://www.dzone.com/tutorials/java/ant/ant-sample-build-file-war-1.html

用Ant打包war的简单流程

原文:http://www.dzone.com/tutorials/java/ant/ant-sample-build-file-war-1.html

原文简单易懂,且内容不多,推荐直接看英文,这里只是简单翻译一下,做为以后参考所用。

 

在这个示例里我使用Spring SimpleFormController 的例子来配合讲解war构建过程,下图所示是该应用的结构。

用Ant封装war的简单流程

 

src里面的所有类需要编译并且放在build/classes目录下,要构建的war包需要放在dist目录。

 

所以,第一步,创建build/classes和dist目录,用init来负责完成这些工作:

<target name="init">    <mkdir dir="build/classes"/>    <mkdir dir="dist" /></target>


接下来编译src目录的类到build/classes目录,编译之前首先要设置好classpath,如下所示:

<path id="compile.classpath">    <fileset dir="WebContent/WEB-INF/lib">        <include name="*.jar"/>    </fileset></path>


接下来用javac命令进行编译。编译时要保证相关目录已创建好,所以,编译的工作依赖于init,如下所示:

<target name="compile" depends="init" >    <javac destdir="build/classes" debug="true" srcdir="src">        <classpath refid="compile.classpath"/>    </javac></target>


接下来就可以打war包,可以用ant提供的war命令完成这部分工作:

<target name="war" depends="compile">    <war destfile="dist/AntExample.war" webxml="WebContent/WEB-INF/web.xml">        <fileset dir="WebContent"/>        <lib dir="WebContent/WEB-INF/lib"/>        <classes dir="build/classes"/>    </war></target>

war命令的详细参考:http://ant.apache.org/manual/Tasks/war.html

 

最后,可能需要做一些清理工作,如:

<target name="clean">    <delete dir="dist" />    <delete dir="build" /></target>


以下是完整的构建脚本:

<?xml version="1.0" ?> <project name="AntExample1" default="war"><path id="compile.classpath"><fileset dir="WebContent/WEB-INF/lib"><include name="*.jar"/></fileset></path><target name="init"><mkdir dir="build/classes"/><mkdir dir="dist" /></target><target name="compile" depends="init" ><javac destdir="build/classes" debug="true" srcdir="src"><classpath refid="compile.classpath"/></javac></target><target name="war" depends="compile"><war destfile="dist/AntExample.war" webxml="WebContent/WEB-INF/web.xml"><fileset dir="WebContent"/><lib dir="WebContent/WEB-INF/lib"/><classes dir="build/classes"/></war></target><target name="clean"><delete dir="dist" /><delete dir="build" /></target></project>


还有附件的,我竟然找不到上传附件的地方,莫非“床上等你”不允许上传附件,还是我不熟悉相关操作。罢了,需要附件的可以点击原文去下载。

再附上一些Ant相关的链接,同样通俗易懂,推荐阅读一下:

http://www.tutorialspoint.com/ant/ant_introduction.htm

 

热点排行