Apache Ant 任务 - WAR



描述

War 任务是 Jar 任务的扩展,对应该最终位于 Web 应用程序存档的 WEB-INF/lib、WEB-INF/classes 或 WEB-INF 目录中的文件进行特殊处理。

属性

序号 属性 & 描述
1

Destfile

要创建的 WAR 文件。

2

Webxml

要使用的 servlet 配置描述符 (WEB-INF/web.xml)。

3

Basedir

从中打包文件的目录。

4

Compress

不仅存储数据,还压缩它们。除非您将 keepcompression 属性设置为 false,否则这将应用于整个存档,而不仅仅是您在更新时添加的文件。

5

Keepcompression

对于来自现有存档(如嵌套的 zipfileset 或更新存档时)的条目,请保留其原始压缩方式,而不是使用 compress 属性。

6

Encoding

用于存档内文件名的字符编码。

7

Filesonly

仅存储文件条目。

8

Include

必须包含的文件模式的逗号或空格分隔列表。

9

includesfile

文件名。此文件的每一行都被视为一个包含模式。

10

Excludes

必须排除的文件模式的逗号或空格分隔列表。

11

Excludesfile

文件名。此文件的每一行都被视为一个排除模式。

12

defaultexcludes

指示是否应使用默认排除项 (yes|no)。

13

Menifest

要使用的清单文件。

14

Filesetmanifest

在 zipfileset 或 zipgroupfileset 文件中找到清单文件时的行为。有效值为 skip、merge 和 mergewithoutmain。merge 将合并所有清单,并将此合并到任何其他指定的清单中。mergewithoutmain 合并所有内容,但清单的主部分除外。

15

Whenmanifestonly

当没有文件匹配时的行为。有效值为 fail、skip 和 create。

16

Manifestencoding

指定清单文件时,用于读取 JAR 清单的编码。

17

Index

是否创建索引列表以加快类加载速度。除非您使用嵌套的 indexjars 元素指定其他 jar,否则只有此 jar 的内容将包含在索引中。

18

indexMetaInf

是否在索引中包含 META-INF 及其子项。如果 index 为 false,则没有任何效果。Oracle 的 jar 实现过去会跳过 META-INF 目录,Ant 遵循此示例。Java 5 已更改此行为。为了避免 Ant 生成的 jar 在 Java 1.4 或更早版本上出现问题,除非明确要求,否则 Ant 不会包含 META-INF。

19

Manifestencoding

指定清单文件时,用于读取 JAR 清单的编码。

20

Update

指示如果目标文件已存在,是否更新或覆盖它。

21

Duplicate

找到重复文件时的行为。有效值为 add、preserve 和 fail。

22

Roundup

文件修改时间是否将四舍五入到下一个偶数秒。

23

Level

应执行文件压缩的非默认级别。有效值范围为 0(无压缩/最快)到 9(最大压缩/最慢)。

24

preserve0permissions

更新存档或从其他存档添加条目时,Ant 将假定 Unix 权限值为 0(没有人被允许对文件/目录执行任何操作)表示权限根本没有存储,而不是实际权限,并将应用其自己的默认值。

25

useLanguageEncodingFlag

如果编码为 UTF-8,是否设置语言编码标志。如果编码不是 UTF-8,则此设置没有任何效果。

26

createUnicodeExtraFields

是否创建 Unicode 附加字段以在条目的元数据中第二次存储文件名。

27

fallbacktoUTF8

如果无法使用指定的编码对文件名进行编码,是否使用 UTF-8 和语言编码标志代替指定的编码。

28

mergeClassPathAttributes

是否合并不同清单中找到的 Class-Path 属性(如果合并清单)。如果为 false,则只会保留最后一个合并的清单的属性。

29

FlattenAttributes

是否将某个部分中出现多次的属性(这只能发生在 Class-Path 属性中)合并到单个属性中。

30

zip64Mode

何时对条目使用 Zip64 扩展。可能的值为 never、always 和 as-needed。

31

Needxmlfile

标志,指示是否需要 web.xml 文件。在生成没有 web.xml 文件的 servlet 2.5+ WAR 文件时,应将其设置为 false。

示例

用法

创建包含以下内容的 build.xml 文件 -

<?xml version="1.0"?>
<project name="TutorialPoint" default="info">
   <target name="info">
      <war destfile="myapp.war" webxml="web.xml"></war>
   </target>
</project>

以上脚本将在当前目录中创建一个名为 myapp.ear 的 ear 文件。

输出

在上述构建文件上运行 Ant 会产生以下输出 -

F:\tutorialspoint\ant>ant
Buildfile: F:\tutorialspoint\ant\build.xml

info:
   [war] Building war: F:\tutorialspoint\ant\myapp.war

BUILD SUCCESSFUL
Total time: 1 second
广告