Как передать настраиваемые списки сопоставления файлов макросам ant? - PullRequest
0 голосов
/ 19 января 2012

Я пытаюсь реорганизовать сборочный файл Ant со многими похожими целями в сборочный файл, использующий макросы. Это примерно так выглядит:

<macrodef name="build-text">
  <argument name="lang" />
  <element name="file-list"/>
  <sequential>
     <property name="lang" value="@{lang}" />
     <xslt style="my_stylesheet.xsl" destdir="build" basedir="src">
       <!-- lots of params here -->
       <file-list />
     </xslt>
   </sequential>
</macrodef>

<target name="buildTextDE">
  <build-text lang="DE">
    <file-list>
       <mapper>
         <mapper type="glob" from="Text1_${lang}.html" to="Text1_${lang}.fo"/>
         <mapper type="glob" from="Text2_${lang}.html" to="Text2_${lang}.fo"/>
       </mapper>
    </file-list>
  </build-text>
</target>

Существует еще одна задача с именем buildTextEN, которая почти идентична, за исключением атрибута lang. Однако в некоторых случаях список файлов отличается. Теперь, как бы я хотел еще больше упростить файл сборки, определив «глобальный» список сопоставлений, который содержит списки файлов для немецкого и английского языков, каждый файл с заполнителем для языка. Я хотел бы сослаться на это глобальное отображение, где не требуется особый случай. Как бы я это сделал?

...