Ant - 创建JAR文件



编译Java源文件后的下一个逻辑步骤是构建Java归档文件,即Java归档(JAR)文件。使用Ant创建JAR文件非常容易,只需使用jar任务即可。

属性

jar任务常用的属性如下:

序号 属性和描述
1

basedir

输出JAR文件的基目录。默认情况下,它设置为项目的基目录。

2

compress

指示Ant在创建JAR文件时压缩文件。

3

keepcompression

compress属性适用于单个文件,而keepcompression属性作用相同,但它应用于整个存档。

4

destfile

输出JAR文件的名称。

5

duplicate

指示Ant在找到重复文件时该怎么做。您可以添加、保留或忽略重复文件。

6

excludes

指示Ant不要将这些用逗号分隔的文件列表包含在包中。

7

excludesfile

与上面相同,只是排除文件是使用模式指定的。

8

includes

excludes的反义词。

9

includesfile

excludesfile的反义词。

10

update

指示Ant覆盖已构建JAR文件中的文件。

继续我们的Hello World传真应用程序项目,让我们添加一个新的目标来生成jar文件。

但在那之前,让我们考虑一下下面给出的jar任务。

<jar destfile="${web.dir}/lib/util.jar"
   basedir="${build.dir}/classes"
   includes="faxapp/util/**"
   excludes="**/Test.class"
/>

这里,web.dir属性指向web源文件的路径。在本例中,这是放置util.jar的位置。

本例中的build.dir属性指向build文件夹,其中可以找到util.jar的类文件。

在本例中,我们使用faxapp.util.*包中的类创建一个名为util.jar的jar文件。但是,我们排除了以Test结尾的类。输出jar文件将放置在web应用程序的lib文件夹中。

如果我们想使util.jar成为可执行jar文件,我们需要添加包含Main-Class元属性的manifest

因此,上面的示例将更新如下:

<jar destfile="${web.dir}/lib/util.jar"
   basedir="${build.dir}/classes"
   includes="faxapp/util/**"
   excludes="**/Test.class" class="ts"
   <manifest class="ts"
      <attribute name="Main-Class" value="com.tutorialspoint.util.FaxUtil"/>
   </manifest class="ts"
</jar class="ts"

要执行jar任务,请将其包装在目标中,最常见的是build或package目标,然后执行它们。

<target name="build-jar" class="ts"
<jar destfile="${web.dir}/lib/util.jar"
   basedir="${build.dir}/classes"
   includes="faxapp/util/**"
   excludes="**/Test.class" class="ts"
   <manifest class="ts"
      <attribute name="Main-Class" value="com.tutorialspoint.util.FaxUtil"/>
   </manifest class="ts"
</jar class="ts"
</target class="ts"

在这个文件上运行Ant会为我们创建util.jar文件。

运行Ant文件的结果如下:

C:\ class="ts"ant build-jar
Buildfile: C:\build.xml

BUILD SUCCESSFUL
Total time: 1.3 seconds

util.jar文件现在放置在输出文件夹中。

广告