<zip destfile="/tmp/abc.zip" >
<fileset ...>
....
</fileset>
<zipfileset prefix="hello" >
</zipfilest>
</zip>
我想在创建zip时为所有文件添加前缀foo_bar_3.0。有办法吗?谢谢。
你的问题有点令人困惑。对于zipfileset部分,您已经将前缀"hello"附加到该集合中的所有文件。
如果您需要文件集部分,ant文档有适合您的示例,在页面底部https://ant.apache.org/manual/Tasks/zip.html您会发现这个示例:
<zip destfile="${dist}/manual.zip">
<mappedresources>
<fileset dir="htdocs/manual"/>
<globmapper from="*" to="docs/user-guide/*"/>
</mappedresources>
</zip>
,这里是映射器的文档https://ant.apache.org/manual/Types/mapper.html,一个简单的globmapper就可以了
您可以通过将所有文件保存在具有您选择的结构的临时目录中来实现您的目标。一旦文件被暂存,只需压缩目录并清理暂存区域。
<target name="zip.with.prefix">
<copy todir="tmp/dir1">
<fileset dir="dir1"/>
</copy>
<copy todir="tmp/dir2">
<fileset dir="dir2"/>
</copy>
<zip destfile="abc.zip" basedir="tmp"/>
<delete dir="tmp"/>
</target>