Eine Sammlung von Beispielen für die Verwendung von ANT zum automatischen Erstellen von Flash -Apps/-spielen. Es soll ein Kochbuch oder eine Lernressource sein. Daher ist jedes Beispiel so klein wie möglich und sollte selbst beschreiben.
Machen Sie Ihren Build kontinuierlich integriert!
Zunächst müssen Sie JRE (Java Runtime Environment) installieren. Um alles wie erwartet zu überprüfen, geben Sie einfach $ java in Ihr Terminal ein.
Dann müssen Sie Ant von http://ant.apache.org/bindownload.cgi herunterladen. Extrahieren Sie einfach die heruntergeladene .ZIP -Datei in das Verzeichnis ~/sdks/ant -Verzeichnis, setzen Sie die Variable ANT_HOME -Umgebung in diesen Speicherort und fügen Sie ANT_HOME zum PATH hinzu:
${ANT_HOME}/bin (macOS) oder %ANT_HOME%/bin (Windows)
Um zu überprüfen, ob alles wie erwartet funktioniert, geben Sie einfach $ ant in Ihr Terminal ein.
Wenn Sie macOS verwenden, können Sie Ant mit Brew:
$ brew install antinstallieren
Wenn Sie Adobe Flash Builder 4.7 verwenden, finden Sie den Air SDK AT /Applications/Adobe Flash Builder 4.7/eclipse/plugins/com.adobe.flash.compiler_4.7.0.349722 (macOS) oder C:Program Files (x86)AdobeAdobe Flash Builder 4.7eclipsepluginscom.adobe.flash.compiler_4.7.0.349722 (Windows).
Andernfalls können Sie es von http://www.adobe.com/devnet/air/air-sdk-download.html herunterladen. Extrahieren Sie es einfach in das, sagen wir ~/sdks/air -Verzeichnis.
Wenn Sie Adobe Flash Builder 4.7 verwenden, finden Sie das Flex SDKS -Verzeichnis unter <FlashBuilder_installation_location>/sdks .
Andernfalls müssen Sie es manuell herunterladen und installieren. Ich persönlich bevorzuge die Veröffentlichung von Adobe, das von http://www.adobe.com/devnet/flex/flex-sdk-download.html heruntergeladen werden kann. Extrahieren Sie es einfach in das Verzeichnis von ~/sdks/flex . Möglicherweise möchten Sie jedoch die neueste Version des Flex SDK verwenden, das derzeit von Apache entwickelt wird. In diesem Fall können Sie es mithilfe der http://flex.apache.org/installer.html installieren.
Sie sollten die Umgebungsvariable FLEX_HOME festlegen und dem PATH hinzufügen.
Sie verwenden den Anwendungs -Compiler, um SWF -Dateien aus Ihren ActionScript- und/oder MXML -Quelldateien zu kompilieren.
Sie verwenden den Komponenten -Compiler, um eine SWC -Datei aus Komponentenquelldateien und anderen Asset -Dateien wie Bildern und Stilblättern zu generieren.
Sie können das ActionScript- und MXML -Assets Ihrer Luftanwendung mit dem Befehlszeilen MXML Compiler (AMXMLC) kompilieren.
Verwenden Sie den Komponenten Compiler ACOMPC, um Luftbibliotheken und unabhängige Komponenten zu erstellen.
ASDOC ist ein Befehlszeilen-Tool, mit dem Sie API-Referenzdokumentation als HTML-Seiten aus den ActionScript-Klassen und MXML-Dateien erstellen können.
Das Air Developer-Tool ist ein Mehrzweck-Befehlszeilen-Tool für die Entwicklung von Luftanwendungen. Sie können ADT verwenden, um die folgenden Aufgaben auszuführen:
Verwenden Sie den Air-Debug-Launcher, um sowohl SWF- als auch HTML-basierte Anwendungen während der Entwicklung auszuführen. Mit ADL können Sie eine Anwendung ohne erste Verpackung ausführen und installieren. Standardmäßig verwendet ADL eine Laufzeit im SDK, was bedeutet, dass Sie die Laufzeit nicht separat installieren müssen, um ADL zu verwenden.
Die einfachste Ameise Build.xml -Datei, in der beschrieben wird, wie eine bin/output.swc -Datei erstellt wird:
<? xml version = " 1.0 " ?>
< project name = " swc example " default = " main " basedir = " . " >
< taskdef resource = " flexTasks.tasks " classpath = " ${FLEX_HOME}/ant " />
< property name = " DEPLOY.dir " value = " ${basedir}/bin " />
< target name = " main " depends = " clean, compile " />
< target name = " clean " >
< delete dir = " ${DEPLOY.dir} " />
< mkdir dir = " ${DEPLOY.dir} " />
</ target >
< target name = " compile " >
< compc output = " ${DEPLOY.dir}/output.swc " failonerror = " true " maxmemory = " 1024m " >
< source-path path-element = " ${basedir}/src " />
< include-sources dir = " ${basedir}/src " includes = " * " />
</ compc >
</ target >
</ project > Nehmen wir an, das Projekt enthält ein libs -Verzeichnis mit verknüpften .SWC -Bibliotheken. Wir müssen es Compc sagen, wo sie sie finden können:
<? xml version = " 1.0 " ?>
< project name = " swc example " default = " main " basedir = " . " >
< taskdef resource = " flexTasks.tasks " classpath = " ${FLEX_HOME}/ant " />
< property name = " DEPLOY.dir " value = " ${basedir}/bin " />
< target name = " main " depends = " clean, compile " />
< target name = " clean " >
< delete dir = " ${DEPLOY.dir} " />
< mkdir dir = " ${DEPLOY.dir} " />
</ target >
< target name = " compile " >
< compc output = " ${DEPLOY.dir}/output.swc " failonerror = " true " maxmemory = " 1024m " >
< source-path path-element = " ${basedir}/src " />
< include-sources dir = " ${basedir}/src " includes = " * " />
< library-path dir = " ${basedir}/libs " includes = " * " append = " true " />
</ compc >
</ target >
</ project >Oder wenn wir eine .SWC -Datei angeben möchten, die sich überall befinden:
<? xml version = " 1.0 " ?>
< project name = " swc example " default = " main " basedir = " . " >
< taskdef resource = " flexTasks.tasks " classpath = " ${FLEX_HOME}/ant " />
< property name = " DEPLOY.dir " value = " ${basedir}/bin " />
< target name = " main " depends = " clean, compile " />
< target name = " clean " >
< delete dir = " ${DEPLOY.dir} " />
< mkdir dir = " ${DEPLOY.dir} " />
</ target >
< target name = " compile " >
< compc output = " ${DEPLOY.dir}/output.swc " failonerror = " true " maxmemory = " 1024m " >
< source-path path-element = " ${basedir}/src " />
< include-sources dir = " ${basedir}/src " includes = " * " />
< library-path file = " lib.swc " append = " true " />
</ compc >
</ target >
</ project >Jetzt verwenden wir benutzerdefinierte Metadaten und möchten sie in kompilierter Anwendung aufbewahren (das Standardverhalten besteht darin, dass sie entfernt werden, um die Anwendung/Bibliothek so gering wie möglich zu halten):
<? xml version = " 1.0 " ?>
< project name = " swc example " default = " main " basedir = " . " >
< taskdef resource = " flexTasks.tasks " classpath = " ${FLEX_HOME}/ant " />
< property name = " DEPLOY.dir " value = " ${basedir}/bin " />
< target name = " main " depends = " clean, compile " />
< target name = " clean " >
< delete dir = " ${DEPLOY.dir} " />
< mkdir dir = " ${DEPLOY.dir} " />
</ target >
< target name = " compile " >
< compc output = " ${DEPLOY.dir}/output.swc " failonerror = " true " maxmemory = " 1024m " >
< source-path path-element = " ${basedir}/src " />
< include-sources dir = " ${basedir}/src " includes = " * " />
< library-path dir = " ${basedir}/libs " includes = " * " append = " true " />
< keep-as3-metadata name = " Inject " />
< keep-as3-metadata name = " PostConstruct " />
< keep-as3-metadata name = " ArrayElementType " />
</ compc >
</ target >
</ project >< compc ... target-player = " 11.4 " swf-version = " 17 " /> Vergessen Sie nicht, zu überprüfen, ob FLEX_HOME/frameworks/libs/player/<target-version>/playerglobal.swc und ${FLEX_HOME}/runtimes/player/<target-version>/.../FlashPlayerDebugger existieren. Sie finden alle veröffentlichten Versionen von PlayerGlobal.swc und Flash Player Debuggers unter http://helpx.adobe.com/flash-player/kb/archived-flash-player-version.html.
| SWF-Version | Zielspieler |
|---|---|
| 9 | 9 |
| 10 | 10.0, 10.1 |
| 11 | 10.2 |
| 12 | 10.3 |
| 13 | 11.0 |
| 14 | 11.1 |
| 15 | 11.2 |
| 16 | 11.3 |
| 17 | 11.4 |
| 18 | 11.5 |
| 19 | 11.6 |
| 20 | 11.7 |
| 21 | 11.8 |
| 22 | 11.9 |
| 23 | 12.0 |
| 24 | 13.0 |
| 25 | 14.0 |
| 26 | 15.0 |
| 27 | 16.0 |
Schauen wir uns die COMPC -Optionen an. Wenn Sie an detaillierteren Informationen beteiligt sind, können Sie Konfigurations-, Größenbericht und Verknüpfungsbericht ausgeben:
< compc ... dump-config = " ${DEPLOY.dir}/config.xml " size-report = " ${DEPLOY.dir}/sizereport.xml " link-report = " ${DEPLOY.dir}/linkreport.xml " >Warnungen zu deaktivieren:
< compc ... warnings = " false " >Wenn Sie viele Anwendungen/Bibliotheken erstellen, können Sie den Speicher erschöpfen. Sehr nützlich ist die Option "Fork" auf True, was gelöst werden sollte, insbesondere mit MaxMemory auf mindestens einen Auftritt, alles: alles:
< compc ... fork = " true " > Die einfachste Ameise Build.xml -Datei, in der beschrieben wird, wie eine bin/output.swf -Datei erstellt wird:
<? xml version = " 1.0 " ?>
< project name = " swf example " default = " main " basedir = " . " >
< taskdef resource = " flexTasks.tasks " classpath = " ${FLEX_HOME}/ant " />
< property name = " DEPLOY.dir " value = " ${basedir}/bin " />
< target name = " main " depends = " clean, compile " />
< target name = " clean " >
< delete dir = " ${DEPLOY.dir} " />
< mkdir dir = " ${DEPLOY.dir} " />
</ target >
< target name = " compile " >
< mxmlc file = " ${basedir}/src/Main.mxml " output = " ${DEPLOY.dir}/output.swf " failonerror = " true " maxmemory = " 1024m " >
< source-path path-element = " ${basedir}/src " />
</ mxmlc >
</ target >
</ project >Der MXMLC -Compiler bietet fast die gleichen Optionen wie der Compc -Compiler. Jedes im SWC -Abschnitt erstellte Beispiel kann leicht in den Befehl MXMLC geändert werden. Vergleichen Sie Beispiel 1 mit Beispiel 9 und Sie werden sehen.
Die einfachste Ameise Build.xml -Datei, in der beschrieben wird, wie eine bin/output.swf -Datei erstellt wird:
<? xml version = " 1.0 " ?>
< project name = " swf example " default = " main " basedir = " . " >
< taskdef resource = " flexTasks.tasks " classpath = " ${FLEX_HOME}/ant " />
< property name = " DEPLOY.dir " value = " ${basedir}/bin " />
< target name = " main " depends = " clean, compile " />
< target name = " clean " >
< delete dir = " ${DEPLOY.dir} " />
< mkdir dir = " ${DEPLOY.dir} " />
</ target >
< target name = " compile " >
< mxmlc
file= " ${basedir}/src/Main.as "
output= " ${DEPLOY.dir}/output.swf "
static-link-runtime-shared-libraries= " true "
failonerror= " true "
maxmemory= " 1024m " >
< source-path path-element = " ${basedir}/src " />
< source-path path-element = " ${FLEX_HOME}/frameworks " />
</ mxmlc >
</ target >
</ project >Der MXMLC -Compiler bietet fast die gleichen Optionen wie der Compc -Compiler. Jedes im SWC -Abschnitt erstellte Beispiel kann leicht in den Befehl MXMLC geändert werden. Vergleichen Sie Beispiel 1 mit Beispiel 10 und Sie werden sehen.
Die einfachste Ameise Build.xml -Datei, in der beschrieben wird, wie eine bin/output.swf -Datei erstellt wird:
<? xml version = " 1.0 " ?>
< project name = " swf example " default = " main " basedir = " . " >
< taskdef resource = " flexTasks.tasks " classpath = " ${FLEX_HOME}/ant " />
< property name = " DEPLOY.dir " value = " ${basedir}/bin " />
< target name = " main " depends = " clean, compile " />
< target name = " clean " >
< delete dir = " ${DEPLOY.dir} " />
< mkdir dir = " ${DEPLOY.dir} " />
</ target >
< target name = " compile " >
< mxmlc file = " ${basedir}/src/Main.as " output = " ${DEPLOY.dir>/output.swf " configname = " air " failonerror = " true " >
< library-path dir = " ${FLEX_HOME} " append = " true " >
< include name = " frameworks/libs " />
</ library-path >
< library-path dir = " ${FLEX_HOME} " append = " true " >
< include name = " frameworks/libs/air " />
</ library-path >
</ mxmlc >
</ target >
</ project >Der MXMLC -Compiler bietet fast die gleichen Optionen wie der Compc -Compiler. Jedes im SWC -Abschnitt erstellte Beispiel kann leicht in den Befehl MXMLC geändert werden. Vergleichen Sie Beispiel 1 mit Beispiel 11 und Sie werden sehen.
Schnelle Download -Links: Apache Flexunit 4.2, Flexunit 4.1
Vergessen Sie nicht,
CIListenerzu IhrerFlexUnitCore-Instanz hinzuzufügen.
<? xml version = " 1.0 " ?>
< project name = " swf example " default = " main " basedir = " . " >
< taskdef resource = " flexTasks.tasks " classpath = " ${FLEX_HOME}/ant " />
< taskdef resource = " flexUnitTasks.tasks " >
< classpath >
< fileset dir = " <path_to_flex_unit_ant_tasks_dir> " >
< include name = " flexUnitTasks*.jar " />
</ fileset >
</ classpath >
</ taskdef >
< property name = " DEPLOY.dir " value = " ${basedir}/bin " />
< property name = " TESTS.dir " value = " ${basedir}/tests-output " />
< target name = " main " depends = " clean, tests, compile " />
< target name = " clean " >
< delete dir = " ${DEPLOY.dir} " />
< mkdir dir = " ${DEPLOY.dir} " />
< delete dir = " ${TESTS.dir} " />
< mkdir dir = " ${TESTS.dir} " />
</ target >
< target name = " tests " >
< mxmlc file = " ${basedir}/src/tests.mxml " output = " ${TESTS.dir}/tests.swf " failonerror = " true " verbose-stacktraces = " true " >
< source-path path-element = " ${basedir}/src " />
< library-path dir = " ${basedir}/libs " includes = " * " append = " true " />
</ mxmlc >
< flexunit
swf= " ${TESTS.dir}/tests.swf "
toDir= " ${TESTS.dir} "
haltonfailure= " false " failureproperty = " flexunit.failure "
verbose= " true "
localTrusted= " true "
command= " ${FLEX_HOME}/runtimes/player/11.4/win/FlashPlayerDebugger.exe " />
< junitreport todir = " ${TESTS.dir} " >
< fileset dir = " ${TESTS.dir} " >
< include name = " TEST-*.xml " />
</ fileset >
< report format = " frames " todir = " ${TESTS.dir}/html " />
</ junitreport >
</ target >
< target name = " compile " >
< mxmlc file = " ${basedir}/src/Main.mxml " output = " ${DEPLOY.dir}/output.swf " failonerror = " true " maxmemory = " 1024m " >
< source-path path-element = " ${basedir}/src " />
</ mxmlc >
</ target >
</ project >Vergessen Sie nicht,
AIRCIListenerzu IhrerFlexUnitCore-Instanz hinzuzufügen.
<? xml version = " 1.0 " ?>
< project name = " swf example " default = " main " basedir = " . " >
< taskdef resource = " flexTasks.tasks " classpath = " ${FLEX_HOME}/ant " />
< taskdef resource = " flexUnitTasks.tasks " >
< classpath >
< fileset dir = " <path_to_flex_unit_ant_tasks_dir> " >
< include name = " flexUnitTasks*.jar " />
</ fileset >
</ classpath >
</ taskdef >
< property name = " DEPLOY.dir " value = " ${basedir}/bin " />
< property name = " TESTS.dir " value = " ${basedir}/tests-output " />
< target name = " main " depends = " clean, tests, compile " />
< target name = " clean " >
< delete dir = " ${DEPLOY.dir} " />
< mkdir dir = " ${DEPLOY.dir} " />
< delete dir = " ${TESTS.dir} " />
< mkdir dir = " ${TESTS.dir} " />
</ target >
< target name = " test " >
< mxmlc file = " ${basedir}/src/tests.as " output = " ${TESTS.dir}/tests.swf " configname = " air " failonerror = " true " verbose-stacktraces = " true " >
< library-path dir = " ${basedir}/libs " includes= " * " append= " true " />
< library-path dir = " ${FLEX_HOME} " append= " true " >
< include name = " frameworks/libs " />
</ library-path >
< library-path dir = " ${FLEX_HOME} " append = " true " >
< include name = " frameworks/libs/air " />
</ library-path >
</ mxmlc >
< copy file = " ${basedir}/src/tests-app.xml " todir = " ${TESTS.dir} " overwrite = " true " />
< replace file = " ${TESTS.dir}/tests-app.xml " token = " [This value will be overwritten by Flash Builder in the output app.xml] " value = " tests.swf " />
< flexunit
player= " air "
swf= " ${TESTS.dir}/tests.swf "
toDir= " ${TESTS.dir} "
haltonfailure= " false " failureproperty = " flexunit.failure "
verbose= " true " />
< junitreport todir = " ${TESTS.dir} " >
< fileset dir = " ${TESTS.dir} " >
< include name = " TEST-*.xml " />
</ fileset >
< report format = " frames " todir = " ${TESTS.dir}/html " />
</ junitreport >
</ target >
< target name = " compile " >
< mxmlc file = " ${basedir}/src/Main.as " output = " ${DEPLOY.dir>/output.swf " configname = " air " failonerror = " true " >
< library-path dir = " ${FLEX_HOME} " append = " true " >
< include name = " frameworks/libs " />
</ library-path >
< library-path dir = " ${FLEX_HOME} " append = " true " >
< include name = " frameworks/libs/air " />
</ library-path >
</ mxmlc >
</ target >
</ project >...
< target name = " pack " >
< copy file = " ${basedir}/src/swf2png-app.xml " todir = " ${DEPLOY.dir} " overwrite = " true " />
< replace file = " ${DEPLOY.dir}/swf2png-app.xml " token = " [This value will be overwritten by Flash Builder in the output app.xml] " value = " swf2png.swf " />
< exec executable = " ${FLEX_HOME}/bin/adt.bat " failonerror = " true " >
< arg line = " -package " />
< arg line = " -storetype pkcs12 " />
< arg line = " -keystore ${basedir}/certificate.p12 " />
< arg line = " -storepass <password> " />
< arg line = " ${DEPLOY.dir}/swf2png.air " />
< arg line = " ${DEPLOY.dir}/swf2png-app.xml " />
< arg line = " -C ${DEPLOY.dir} swf2png.swf " />
</ exec >
</ target >
...Generieren Sie ASDOC in ein Tempor -Dir und aktualisieren Sie die .SWC -Datei damit.
...
< target name = " asdoc " >
< tempfile property = " temp.dir " destDir = " ${java.io.tmpdir} " prefix = " ${ant.project.name}-doc-xml- " />
< asdoc output = " ${temp.dir} " lenient = " true " failonerror = " true " keep-xml = " true " skip-xsl = " true " fork = " true " >
< compiler .source-path path-element = " ${basedir}/src " />
< doc-sources path-element = " ${basedir}/src " />
</ asdoc >
< zip destfile = " ${DEPLOY.dir}/${ant.project.name}.swc " update = " true " >
< zipfileset dir = " ${temp.dir}/tempdita " prefix = " docs " >
< include name = " *.* " />
< exclude name = " ASDoc_Config.xml " />
< exclude name = " overviews.xml " />
</ zipfileset >
</ zip >
< delete dir = " ${temp.dir} " failonerror = " false " includeEmptyDirs = " true " />
</ target >
...Flexpmd ist ein Quellcodeanalysator. Es findet gemeinsame Programmierfehler wie ungenutzte Variablen, leere Fangblöcke, unnötige Objekterstellung und so weiter.
So generieren Sie eine pmd_ruleset.xml , verwenden Sie den Online -PMD -Regeln.
Schneller Download -Link: Adobe Flexpmd 1.3
...
< property name = " FLEXPMD.dir " value = " ~/sdks/flexpmd " />
< property name = " FLEXPMD.version " value = " 1.3 " />
< taskdef name = " flexPmd "
classname = " com.adobe.ac.pmd.ant.FlexPmdAntTask "
classpath = " ${FLEXPMD.dir}/flex-pmd-ant-task-${FLEXPMD.version}.jar " >
< classpath >
< pathelement location = " ${FLEXPMD.dir}/flex-pmd-ruleset-api-${FLEXPMD.version}.jar " />
< pathelement location = " ${FLEXPMD.dir}/flex-pmd-ruleset-${FLEXPMD.version}.jar " />
< pathelement location = " ${FLEXPMD.dir}/flex-pmd-core-${FLEXPMD.version}.jar " />
< pathelement location = " ${FLEXPMD.dir}/as3-plugin-utils-${FLEXPMD.version}.jar " />
< pathelement location = " ${FLEXPMD.dir}/as3-parser-api-${FLEXPMD.version}.jar " />
< pathelement location = " ${FLEXPMD.dir}/as3-parser-${FLEXPMD.version}.jar " />
< pathelement location = " ${FLEXPMD.dir}/pmd-4.2.5.jar " />
< pathelement location = " ${FLEXPMD.dir}/commons-lang-2.4.jar " />
< pathelement location = " ${FLEXPMD.dir}/flex-pmd-files-${FLEXPMD.version}.jar " />
< pathelement location = " ${FLEXPMD.dir}/flex-pmd-metrics-${FLEXPMD.version}.jar " />
< pathelement location = " ${FLEXPMD.dir}/plexus-utils-1.0.2.jar " />
< pathelement location = " ${flexpmd.libs}/dom4j-1.6.1.jar " />
</ classpath >
</ taskdef >
< taskdef name = " flexCpd "
classname = " com.adobe.ac.cpd.ant.FlexCpdAntTask "
classpath = " ${FLEXPMD.dir}/flex-pmd-cpd-ant-task-${FLEXPMD.version}.jar " >
< classpath >
< pathelement location = " ${FLEXPMD.dir}/flex-pmd-files-${FLEXPMD.version}.jar " />
< pathelement location = " ${FLEXPMD.dir}/flex-pmd-cpd-${FLEXPMD.version}.jar " />
< pathelement location = " ${FLEXPMD.dir}/as3-plugin-utils-${FLEXPMD.version}.jar " />
< pathelement location = " ${FLEXPMD.dir}/as3-parser-api-${FLEXPMD.version}.jar " />
< pathelement location = " ${FLEXPMD.dir}/as3-parser-${FLEXPMD.version}.jar " />
< pathelement location = " ${FLEXPMD.dir}/pmd-4.2.5.jar " />
</ classpath >
</ taskdef >
...
< target name = " flexPmd " >
< flexPmd
sourceDirectory = " ${basedir} "
outputDirectory = " ${DEPLOY.dir} "
ruleSet = " ${basedir}/pmd_ruleset.xml " />
</ target >
< target name = " flexCpd " >
< flexCpd
minimumTokenCount = " 50 "
outputFile = " ${DEPLOY.dir}/cpd.xml " >
< fileset dir = " ${basedir} " >
< include name = " **/*.as " />
< include name = " **/*.mxml " />
< exclude name = " vendor/** " />
</ fileset >
</ flexCpd >
</ target >
... Wiederholen Sie sich nicht, verwenden Sie ${ant.project.name} wie in Beispiel 15 zu sehen ist - ASDOC generieren.
Wenn Sie Ihre FlexUnit -Tests auf CI -Maschine durchführen und ein Test fehlschlägt, endet Ihr Build. Aber es endet vor der Berichtserstellung, sodass Ihre Statistiken nicht aktualisiert werden können und Sie nicht wissen, welcher Test fehlschlägt und warum. Daher bietet Flexunit Task failureproperty :
...
< target name = " test " >
< mxmlc file = " ${basedir}/src/tests.mxml " output = " ${TESTS.dir}/tests.swf " failonerror = " true " verbose-stacktraces = " true " >
< source-path path-element = " ${basedir}/src " />
< library-path dir = " ${basedir}/libs " includes = " * " append = " true " />
</ mxmlc >
< flexunit
swf= " ${TESTS.dir}/tests.swf "
toDir= " ${TESTS.dir} "
haltonfailure= " false " failureproperty = " flexunit.failure "
verbose= " true "
localTrusted= " true "
command= " ${FLEX_HOME}/runtimes/player/11.4/win/FlashPlayerDebugger.exe " />
< junitreport todir = " ${TESTS.dir} " >
< fileset dir = " ${TESTS.dir} " >
< include name = " TEST-*.xml " />
</ fileset >
< report format = " frames " todir = " ${TESTS.dir}/html " />
</ junitreport >
< fail if = " flexunit.failure " message = " Unit test(s) failed. See reports! " />
</ target >
...Diese Arbeit ist im Rahmen einer Creative Commons Attribution-Noncommercial 4.0 International Lizenz lizenziert