我们想要构建多个 zip 文件,其中一些文件的内容与其他文件相同。而不是为每个 zip 指定完整的文件列表(它们实际上非常大),我想我会尝试得到一些重用。
所以我尝试使用<union>
这个:
<project name="test" default="zips">
<target name="zips">
<union id="common">
<zipfileset prefix="." dir="." includes="1"/>
<zipfileset prefix="3" dir="." includes="2"/>
</union>
<zip zipfile="1.zip">
<resources refid="common"/>
</zip>
<zip zipfile="2.zip">
<resources refid="common"/>
</zip>
</target>
</project>
这确实会生成两个包含“1”和“2”的 zip 文件,但两个文件中都缺少“3”前缀。
我究竟做错了什么?
我们还有一个在内部使用 zipfileset 的自定义任务。我也试图让它与 union 一起工作,但不知道如何获得前缀值。