Я хотел бы создать файл jar динамически в зависимости от выбранных java-модулей. Вот часть скрипта ant, которая это делает.
<property name="modules.selected" value="A,C,F" />
<for list="${modules.selected}" param="module">
<sequential>
<echo>Module chosen ${basedir}/@{module}/src</echo>
<copy todir="${build.dir.src}" overwrite="true">
<fileset dir="${basedir}/@{module}/src">
<include name="**/*.${src.valid.exts}" />
</fileset>
</copy>
</sequential>
</for>
В приведенном выше сценарии я выбираю модуль, затем создаю каталог и копирую все модули, присутствующие в каталоге, вместоположение (build / src).
Но мне действительно не нравится, что упомянутая выше логика хотела бы изменить, чтобы включить все необходимые модули в fileset
и использовать заполненный fileset
для копирования.
Вот логика, которую я ищу
<fileset id="required-modules" dir="${basedir}/@{module}/src">
<for list="${modules.selected}" param="module">
<sequential>
<echo>Module chosen ${basedir}/@{module}/src</echo>
<include name="**/*.${src.valid.exts}" />
</sequential>
</for>
</fileset>
<copy todir="${build.dir.src}" overwrite="true">
<fileset refid="required-modules" />
</copy>
Может ли кто-нибудь обновить приведенный выше скрипт, чтобы он работал.