对于每个套件来说,有两个重要的信息是必须的:id,和一个要生成的归档格式的列表。实际情况中,至少还需要其它一小节描述符的内容——因为大部分归档格式如果没有可引入的文件,将一文不值,同时,如果没有一个id和至少一种格式,就不会产生任何归档。id首先被用到归档的文件名中,同时它还是归档构件分类器名称一部分。格式(format)字符串同时也控制archiver-component实例去创建最终的套件归档。所有套件描述符必须包含一个id和至少一个format:
Example 12.5. 必须的套件描述符元素
<assembly> <id>bundle</id> <formats> <format>zip</format> </formats> ... </assembly>
套件id可以是任意不包含空格的字符串。标准的实践是使用破折号(-)来分隔单词。如果你要创建一个拥有有趣的唯一打包结构(interesting
unique package
structure)的套件,那么其id就会是interesting-unique-package。同时,套件描述符还支持多种格式,允许你轻松创建.zip,
.tar.gz,和.tar.bz2等熟悉分发归档。如果你没有找到你需要的归档格式,你也可以创建自定义的格式。自定义格式在Section 12.5.8, “componentDescriptors
and
containerDescriptorHandlers
”中讨论。Assembly插件原生支持多种归档格式,包括:
-
jar
-
zip
-
tar
-
bzip2
-
gzip
-
tar.gz
-
tar.bz2
-
rar
-
war
-
ear
-
sar
-
dir
id和format至关重要,因为它们将成为套件归档的坐标的一部分。Example 12.5, “必须的套件描述符元素”中的例子会创建一个打包类型为zip,分类器为bundle的套件构件。