我一直在研究如何找到一种方法将多个Jar文件组合到Jar上作为可交付成果。
在一个目录中,我有一个名为Jar_gen.xml的ant文件,该文件完整地由以下代码组成
<target name="combine-jars">
<jar destfile="out.jar">
<zipgroupfileset dir="lib" includes="*.jar"/>
</jar>
</target>
在同一目录中,我有另一个名为lib的目录,其中包含我想要展平的所有Jar文件。
我一直在用
运行ant脚本ant -buildfile Jar_gen.xml
确保我从Jar_gen.xml文件所在的目录运行它。
我的蚂蚁脚本没有输出,我不明白为什么。有人可以帮我修改我的脚本,这样我就可以压扁所有的罐子并继续构建我的可交付包。
请注意
我没有主要课程,因此Eclipse可运行的Jar对我不起作用
我在运行Ant脚本方面经验很少,所以完整的答案会非常有用。
答案 0 :(得分: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”时,我得到一个out.jar,其中包含a.jar和b.jar的内容。