Apache Ant Tasks 简明教程

Apache Ant Tasks - EAR

Description

Ear 任务是对 Jar 任务的扩展,对应该最终出现在 Enterprise 应用存档中的文件采取特殊处理。

Properties

Sr.No

Attributes & Description

1

Destfile 要创建的 EAR 文件。

2

app.xml 要使用的部署描述符 (META-INF/application.xml)。

3

Basedir 从中将文件 jar 化的目录。

4

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

5

Keepcompression 对于源自现有存档的项(如嵌套 zipfileset 或在更新存档时),保持压缩,就像它最初创建时一样,而不使用 compress 属性。

6

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

7

Filesonly Store only file entries.

8

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

9

Includesfile 文件的名称。此文件中的每一行都视为包含模式。

10

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

11

Excludesfile 文件的名称。此文件中的每一行都视为排除模式。

12

Defaultexcludes 指示是否应使用默认排除项(是

no).

13

Menifest 要使用的清单文件。

14

Filesetmanifest 在 zipfileset 或 zipgroupfileset 文件中找到清单文件时的行为。有效值包括:跳过、合并和合并而不进行主要处理。合并将把所有清单合并在一起,然后将此合并合并到任何其他指定清单中。合并而不进行主要处理将合并清单中的所有内容,但是不包括主部分。

15

Whenmanifestonly 当没有文件匹配时的行为。有效值包括:失败、跳过和创建。

16

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

17

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

18

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

19

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

20

Update 指示在目标文件已经存在时是更新还是覆盖它。

21

Duplicate 找到重复文件时的行为。有效值包括:添加、保留和失败。

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 是否合并不同清单中找到的类路径属性(如果合并清单)。如果为 false,则只保留最后一个合并的清单的属性。

29

FlattenAttributes 是否将某个部分中出现多次的属性(这种情况只能发生在 Class-Path 属性中)合并为一个属性。

30

Example

Usage

使用以下内容创建 build.xml −

<?xml version="1.0"?>
<project name="TutorialPoint" default="info">
   <property name="src.dir" value="src" />
   <property name="build.dir" value="build" />
   <target name="info">
      <ear destfile="${build.dir}/myapp.ear" appxml="${src.dir}/metadata/application.xml">
         <fileset dir="${build.dir}" includes="*.jar,*.war"/>
      </ear>
   </target>
</project>

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

Output

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

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

info:
   [ear] Building ear: F:\tutorialspoint\ant\build\myapp.ear

BUILD SUCCESSFUL
Total time: 1 second