1

我一直在研究试图找到一种方法将多个 Jar 文件组合到 Jar 上作为可交付成果。

在一个目录中,我有一个名为 Jar_gen.xml 的 ant 文件,其中包含以下代码

<target name="combine-jars">
    <jar destfile="out.jar">
        <zipgroupfileset dir="lib" includes="*.jar"/>
    </jar>
</target>

在同一个目录中,我有另一个名为 lib 的目录,其中包含我想要展平的所有 Jar 文件。

我一直在运行蚂蚁脚本

ant -buildfile Jar_gen.xml

确保我从 Jar_gen.xml 文件所在的同一目录运行它。

我没有从我的 ant 脚本中得到任何输出,我也不知道为什么。有人可以帮我修复我的脚本,这样我就可以展平我所有的罐子并继续构建我的可交付包。

笔记

我没有主类,所以 Eclipse 可运行 Jar 对我不起作用

我几乎没有运行 Ant 脚本的经验,所以完整的答案会非常有帮助。

4

1 回答 1

4

您的目录结构设置正确吗?

我使用您的脚本创建了一个快速测试,它似乎可以工作,因为您已在目录结构中设置了所有内容

project_root_dir
- build.xml
- lib
  - a.jar
  - b.jar

build.xml 看起来像:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project name="test">
    <target name="combine-jars">
        <jar destfile="out.jar">
            <zipgroupfileset dir="lib" includes="*.jar"/>
        </jar>
    </target>
</project>

当我转到 project_root_dir 并运行“ant combine-jars”时,我得到一个包含 a.jar 和 b.jar 内容的 out.jar。

于 2013-09-24T18:08:33.527 回答