PDA

Просмотр полной версии : Как избавиться от повтора в ант скрипте


terbooter
01.03.2012, 08:52
Есть ант скрипт, компиляет swc и генерит доки

<target name="swc" >
<compc output="bin/${ant.project.name}.swc">
<include-sources dir="src/main" includes="*" />

<external-library-path dir="${swc.lib}" append="true">
<include name="as3-signals-v0.7.swc" />
<include name="components.swc" />
<include name="as3corelib.swc" />
</external-library-path>
</compc>
</target>


<target name="html-docs">
<asdoc output="doc" failonerror="true" >
<compiler.source-path path-element="src/main"/>
<doc-sources path-element="src/main"/>

<external-library-path dir="${swc.lib}" append="true">
<include name="as3-signals-v0.7.swc" />
<include name="components.swc" />
<include name="as3corelib.swc" />
</external-library-path>
</asdoc>
</target>

Как избавиться от повторения описания внешних библиотек?
То есть описать вот этот блок единожды
<external-library-path dir="${swc.lib}" append="true">
<include name="as3-signals-v0.7.swc" />
<include name="components.swc" />
<include name="as3corelib.swc" />
</external-library-path>

wvxvw
01.03.2012, 17:53
Тут, к сожалению, похоже что не получится... если бы это просто директории были, можно было бы использовать dirset. Но я не думаю, что dirset можно передать в asdoc / compc параметром :(

Максимум, что приходит в голову - генерить билдом другой билд файл, и потом его выполнять - но это уж слишком будет :)

Кстати, я вот в последнее время заинтересовался Scons - http://www.scons.org/ у них нет специфической для Флеша направленности, но то, как они делают это для C++/Java на мой взгляд лучше Ant/Maven.

terbooter
01.03.2012, 18:32
wvxvw, спасибо, интересная штука