An extension of the Jar task with special
treatment for files that should end up in the
WEB-INF/lib, WEB-INF/classes or
WEB-INF directories of the Web Application Archive.
(The War task is a shortcut for specifying the particular layout of a WAR file. The same thing can be accomplished by using the prefix and fullpath attributes of zipfilesets in a Zip or Jar task.)
The extended zipfileset element from the zip task (with attributes prefix, fullpath, and src) is available in the War task.
| Attribute | Description | Required |
| warfile | the war-file to create. | Yes |
| webxml | The deployment descriptor to use (WEB-INF/web.xml). | Yes |
| basedir | the directory from which to jar the files. | No |
| compress | Not only store data but also compress them, defaults to true | No |
| includes | comma separated list of patterns of files that must be included. All files are included when omitted. | No |
| includesfile | the name of a file. Each line of this file is taken to be an include pattern | No |
| excludes | comma separated list of patterns of files that must be excluded. No files (except default excludes) are excluded when omitted. | No |
| excludesfile | the name of a file. Each line of this file is taken to be an exclude pattern | No |
| defaultexcludes | indicates whether default excludes should be used or not ("yes"/"no"). Default excludes are used when omitted. | No |
| manifest | the manifest file to use. | No |
| whenempty | Behavior to use if no files match. | No |
The nested lib element specifies a FileSet. All files included in this fileset will
end up in the WEB-INF/lib directory of the war file.
The nested classes element specifies a FileSet. All files included in this fileset will
end up in the WEB-INF/classes directory of the war file.
The nested webinf element specifies a FileSet. All files included in this fileset will
end up in the WEB-INF directory of the war file. If this
fileset includes a file named web.xml, the file is
ignored and you will get a warning.
The nested metainf element specifies a FileSet. All files included in this fileset will
end up in the META-INF directory of the war file. If this
fileset includes a file named MANIFEST.MF, the file is
ignored and you will get a warning.
Assume the following structure in the project's base directory:
thirdparty/libs/jdbc1.jar thirdparty/libs/jdbc2.jar build/main/com/myco/myapp/Servlet.class src/metadata/myapp.xml src/html/myapp/index.html src/jsp/myapp/front.jsp src/graphics/images/gifs/small/logo.gif src/graphics/images/gifs/large/logo.gifthen the war file
myapp.war created with
<war warfile="myapp.war" webxml="src/metadata/myapp.xml">
<fileset dir="src/html/myapp"/>
<fileset dir="src/jsp/myapp"/>
<lib dir="thirdparty/libs">
<exclude name="jdbc1.jar"/>
</lib>
<classes dir="build/main"/>
<zipfileset dir="src/graphics/images/gifs"
prefix="images"/>
</war>
will consist of
WEB-INF/web.xml WEB-INF/lib/jdbc2.jar WEB-INF/classes/com/myco/myapp/Servlet.class META-INF/MANIFEST.MF index.html front.jsp images/small/logo.gif images/large/logo.gifusing Ant's default manifest file. The content of
WEB-INF/web.xml is identical to
src/metadata/myapp.xml.
Copyright © 2000,2001 Apache Software Foundation. All rights Reserved.