Ant исключает файл на основе его содержимого - PullRequest
0 голосов
/ 09 сентября 2011

Есть ли способ исключить файлы из набора файлов ant на основе содержимого файла?

У нас есть тестовые серверы, на которых файлы кода смешаны с файлами, созданными CMS.Обычно файлы размещаются в разных папках, но существует риск, что файлы реального кода находятся в середине сгенерированного кода.

Единственный способ различить сгенерированные файлы - это открыть файлы и посмотреть на их содержимое.,Если файл содержит ключевое слово, его следует исключить.

Кто-нибудь знает способ выполнить это с помощью Ant?

Из ответа, предоставленного Притом Сангхой, Ishould использовать цепочку фильтров.Однако здесь я пропускаю шаг.

Допустим, я загружаю текстовый файл исключений для выполнения:

<loadfile property="exclusions" srcFile="exclusions.txt" />

Но я не знаю, как интегрировать его в свойтекущая задача копирования:

<copy todir="${test.dir}">
  <fileset dir="${src.dir}">

  </fileset>
</copy>

Я пытался добавить следующее исключение в набор файлов, но он ничего не делает:

<exclude name="${exclusions}"/>

Я уверен, что пропустил простой шаг...

Ответы [ 2 ]

1 голос
/ 10 сентября 2011

Посмотрите на селекторы not и contains.

Селектор not содержит пример практически того, что вы пытаетесь сделать.

<copy todir="${test.dir}">
  <fileset dir="${src.dir}">
    <not>
      <contains text="your-keyword-here"/>
    </not>
  </fileset>
</copy>

Также имеется селектор containsregexp , который может быть полезен, если ваши критерии исключения более сложны.

Есть загрузка дополнительных селекторов , которые можно использовать для уточнения вашего выбора при необходимости.

0 голосов
/ 09 сентября 2011

Я не знаю муравья, но читаю документы ....

  • Можете ли вы создать список файлов, используя filterchain , и поместить его в excludefiles из набора файлов?

или

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...