Ant - 创建 JAR 文件


编译 java 源文件后,下一个逻辑步骤是构建 java 存档,即 Java 存档 (JAR) 文件。通过jar任务,使用 Ant 创建 JAR 文件非常容易。

属性

jar 任务的常用属性如下 -

先生编号 属性和描述
1

基迪尔

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

2

压缩

建议 Ant 在创建 JAR 文件时压缩该文件。

3

保持压缩

虽然 compress 属性适用于单个文件,但 keepcompression 属性执行相同的操作,但它适用于整个存档。

4

目标文件

输出 JAR 文件的名称。

5

复制

建议 Ant 在发现重复文件时应采取的措施。您可以添加、保留或失败重复文件。

6

排除

建议 Ant 不要在包中包含这些以逗号分隔的文件列表。

7

排除文件

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

8

包括

排除的倒数。

9

包含文件

排除文件的逆。

10

更新

建议 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属性指向构建文件夹,其中可以找到util.jar的类文件。

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

如果我们想让 util.jar 成为可执行的 jar 文件,我们需要添加带有Main-Class元属性的清单

因此,上述示例将更新如下 -

<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 任务,请将其包装在目标(最常见的是构建或打包目标)内,然后执行它们。

<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 文件现已放置在输出文件夹中。