我正在运行一个Ant zip任务来压缩Unix系统上目录的全部内容:
<zip destfile="${deploy}/test.zip">
<zipfileset dir="/home/mydir" />
</zip>
创建zip并检查内容后,我可以看到一些配置文件,Visual Studio特定文件以及Mac OS .DS_STORE文件等其他文件都被省略了。
是否有任何规则蚂蚁决定不包含哪些文件?
我需要提前知道,因为我需要在压缩之前创建该目录上的现有文件列表(当前使用Java)。现在我排除所有目录和隐藏文件(使用File.isHidden()和isDirectory()方法),但列表仍然得到一些文件Ant lefts(例如,vssver.scc
答案 0 :(得分:5)
从the docs,或使用Konstantin的解决方案检查您的特定安装:
有一组定义 默认排除所有人 基于目录的任务。从Ant 1.8.1开始 他们是:
**/*~ **/#*# **/.#* **/%*% **/._* **/CVS **/CVS/** **/.cvsignore **/SCCS **/SCCS/** **/vssver.scc **/.svn **/.svn/** **/.DS_Store
Ant 1.8.2添加了以下默认值 排除:
**/.git **/.git/** **/.gitattributes **/.gitignore **/.gitmodules **/.hg **/.hg/** **/.hgignore **/.hgsub **/.hgsubstate **/.hgtags **/.bzr **/.bzr/** **/.bzrignore
答案 1 :(得分:3)
试试这个:
<defaultexcludes echo="true"/>
http://ant.apache.org/manual/Tasks/defaultexcludes.html
请注意,这用于所有使用文件集的Ant tak,而不仅仅是zip任务。
答案 2 :(得分:0)
Excelent Ant Zip任务参考在这里:http://ant.apache.org/manual/Tasks/zip.html