Мне удалось решить мою проблему, "подделав" селектор , который можно использовать в .Вот как это делается:
Сначала я использовал pathconvert для создания списка файлов в моей папке:
<pathconvert property="extract.list" pathsep="
">
<path>
<fileset dir="${extract.src.dir}" includes="${extract.src.dir.relpath}">
<type type="file" />
</fileset>
</path>
<map from="${extract.src.dir}\" to="" />
</pathconvert>
Обратите внимание, что у пользователя карты должен быть список относительных путей вместо абсолютных путей,Кроме того, разделителем является символ новой строки.
Затем этот список записывается в файл:
<echo file="${props.tmp.file}" message="~~~~noop~~~~
${extract.list}" append="false" />
Я поместил туда запись "nooop", чтобы в файле всегда был хотя бы одинлиния.Это важно из-за нашего следующего шага, где мы используем это как include-файл.Если include-файл пуст, Ant интерпретирует это как «разрешить что-либо» ... но мы хотим убедиться, что пустой список не приведет к извлечению ничего из zip-файла.
Последний шаг - извлечь из zip-файла.используя наш временный файл сверху как включаемый файл.Globmapper переименовывает файлы после извлечения в соответствующие имена резервных копий:
<unzip src="${extract.archive}" dest="${extract.dest.dir}" overwrite="true">
<patternset>
<includesfile name="${props.tmp.file}" />
</patternset>
<globmapper from="*" to="*.${backup.suffix}" />
</unzip>