Ant-Java-zipfileset-исключая каталог

у меня есть цель муравья для создания zip, как это -

<zip destfile="${dist}/myzip.zip">
    <zipfileset dir="docs/manual" prefix="docs/userguide"/>    
</zip>

это в основном создает архив myzip.zip со всеми файлами и каталогами в разделе docs/manual с префиксом docs / userguide в архиве.

но я не хочу включать все каталоги вdocs/manual для копирования в архив, У меня есть каталог под названием old под docs/manual который я хочу исключить...Как этого достичь?

4 ответов


С справочная страница ZipFileSet

<zipfileset> поддерживает все атрибуты <fileset> В дополнение к перечисленным ниже.

посмотрим FileSet для справки.

вот как вы это делаете:

<zipfileset dir="docs/manual" prefix="docs/userguide">    
    <exclude name="old/**"/>
</zipfileset>

или inline как атрибут:

<zipfileset dir="docs/manual" prefix="docs/userguide" exclude="old/**" />

обновление: использование подстановочных знаков теперь вместо простого имени.


вы можете исключить весь каталог этого:

<zipfileset dir="docs/manual" prefix="docs/userguide" exlcudes="**/old/**"/>

<zip destfile="${dist}/myzip.zip" excludes="docs/manual/old/**">
    <zipfileset dir="docs/manual" prefix="docs/userguide"/>    
</zip>

Это был единственный, который работал для меня для удаления определенного шаблона файла

<zip destfile="${bin.dir}/boo.jar">
   <zipfileset dir="${classes.dir}" excludes="**/*/BooCreator*.class"/>
</zip>