Как включить дополнительные аргументы компилятора при использовании муравьиной задачи mxmlc?
Flex Builder позволяет устанавливать дополнительные параметры компилятора в параметрах компилятора в свойствах. Это устанавливает аргумент;
-services ".../services-config.xml"
Есть ли способ установить тот же аргумент при использовании задачи муравья mxmlc?
Ура,
Майк
5 ответов
Вы должны иметь возможность установить его в качестве атрибута в задаче mxmlc:
<mxmlc services="../services-config.xml"/>
Не то, что я знаю из.
Вы всегда можете использовать задачу с подузлами, если вы все еще не можете найти ее в документации.
Пример:
<exec executable="${mxmlc.exe}" dir="${basedir}">
<arg line="-source-path '${flex2sdk.locale.dir}'" />
<arg line="-locale en_US" />
</exec>
У меня были те же проблемы с атрибутом services, недоступным для использования в задачах ant, поэтому я добавил опцию, чтобы исправить проблему:
<mxmlc file="path" output="path to output" >
<compiler.services>${path-to-services}</compiler.services>
<load-config filename="${FLEX_HOME}/frameworks/flex-config.xml"/>
<source-path path-element="${FLEX_HOME}/frameworks"/>
<compiler.debug>false</compiler.debug>
<compiler.context-root>/PATWeb</compiler.context-root>
</mxmlc>
Большинство параметров компилятора доступны в виде атрибутов или тегов для mxmlc
задача, однако некоторые опции отсутствуют, или работают несколько неожиданным образом. Хуже всего то, что не хватает надлежащей документации для задач Flex Ant. Иногда мне легче это сделать:
<mxmlc file="Main.as" output="bin/app.swf">
<load-config filename="${FLEX_HOME}/flex-config.xml" />
<load-config filename="build/config.xml" />
</mxmlc>
И затем укажите все параметры, которые я хочу в build/config.xml, по крайней мере, синтаксис задокументирован лучше, и вы всегда можете использовать flex-config.xml
или же air-config.xml
из вашего SDK в качестве (хорошо прокомментированного) образца.
Это достигается следующим:
<target name="compileApp">
<mxmlc file="src/app.mxml"
...other options
services="[path to your services-config.xml]"
context-root="[path to where your gateway file is]">
...
</target>
Вот как мы сейчас создаем приложение mxml... что означает, что Кристоф был прав.