当前位置:K88软件开发文章中心编程工具Apache Ant → 文章内容

Ant 生成 JAR 文件

减小字体 增大字体 作者:佚名  来源:网上搜集  发布时间:2019-1-24 10:03:04

由 ?﹏???ζ???﹏﹏? 创建,路飞 最后一次修改 2016-08-12 Ant 生成 JAR 文件编译完你的 java 源文件后,接下来就构建 java 存档,例如: JAR 文件。创建 Ant 中的 JAR 文件十分简单,运用 jar 任务来生成 jar 包。在 jar 任务中常用的属性如下所示:属性描述basedir表示输出 JAR 文件的基目录。默认情况下,为项目的基目录。compress表示告知 Ant 对于创建的 JAR 文件进行压缩。keepcompression表示 project 基目录的绝对路径。destfile表示输出 JAR 文件的名字。duplicate表示发现重复文件时 Ant 执行的操作。可以是添加、保存、或者是使该重复文件失效。excludes表示移除的文件列表,列表中使用逗号分隔多个文件。excludesfile与上同,但是使用模式匹配的方式排除文件。inlcudes与 excludes 正好相反。includesfile表示在被归档的文件模式下,打包文件中已有的文件。与 excludesfile 相反。update表示告知 Ant 重写已经建立的 JAR 文件。继续我们的 Hello World 传真应用项目,通过添加一个新的目标 target 来产生 jar 文件。 但是在此之前,让我们先来考虑下面给出的 jar 任务。<jar destfile = "${web.dir}/lib/util.jar" basedir = "${build.dir}/classes" includes = "faxapp/util/**" excludes = "**/Test.class" />这里,web.dir 属性指出了 web 源文件的路径。在我们的案例中, web 源文件路径也就是存放 util.jar 的地方。在我们的案例中,build.dir 属性指出了配置文件夹的存储路径,也就是存放 util.jar 类文件的地方。在上面的代码中,我们利用来自 faxapp.util 包中的类文件创建了一个名为 util.jar 的 jar 包。然而,我们排除名字为 Test 的类文件。输出的 jar 文件将会存放在 web 应用的配置文件 lib 中。如果我们想 util.jar 成为可执行文件,只需在 Main-Class 元属性中加入manifest.这样,上面给出的代码,在加入 Main-Class 元属性后,可以更新为如下形式:<jar destfile = "${web.dir}/lib/util.jar" basedir = "${build.dir}/classes" includes = "faxapp/util/**" excludes = "**/Test.class"> <manifest> <attribute name = "Main-Class" value = "com.tutorialspoint.util.FaxUtil"/> </manifest></jar>为了执行 jar 任务,将它包装在目标 target 中,最常见的情况是,将 jar 任务包装在配置目标或者打包目标中(build 目标或 package 目标),并执行包装后的目标。<target name="build-jar"> <jar destfile="${web.dir}/lib/util.jar" basedir="${build.dir}/classes" includes="faxapp/util/**" excludes="**/Test.class"> <manifest> <attribute name="Main-Class" value="com.tutorialspoint.util.FaxUtil"/> </manifest> </jar></target>在上述文件上运行 Ant ,就能创建出 util.jar。上述文件运行 Ant 后,得到以下的输出:C:\>ant build-jarBuildfile: C:\build.xmlBUILD SUCCESSFULTotal time: 1.3 seconds最后得到的输出 util.jar 将被存储在输出文件夹中。

Ant 生成 JAR 文件