Maven: The Complete Reference
13.5. FlexMojos Plugin Goals

The FlexMojos Maven Plugin contains the following goals:
- flexmojos:asdoc
- Generates documentation for Actionscript source files
- flexmojos:asdoc-report
- Generates documentation for Actionscript sources as a report that can be included in a Maven site
- flexmojos:compile-swc
- Compiles Flex source (Actionscript and MXML) into a SWC library for use in a Flex or AIR application
- flexmojos:compile-swf
- Compiles Flex source (Actionscript and MXML) into a SWF for use in the Adobe Flash Player or Adobe AIR Runtime
- flexmojos:copy-flex-resources
- Copies Flex resources into a web application project
- flexmojos:flexbuilder
- Generates project files for use in Adobe Flex Builder
- flexmojos:generate
- Generates Actionscript 3 based on Java classes using Granite GAS3
- flexmojos:optimize
- Goal which run post-link SWF optimization on swc files. This goal is used to produce RSL files.
- flexmojos:sources
- Create a JAR which contains all the sources for a Flex project
- flexmojos:test-compile
- Compile all test classes in a Flex project
- flexmojos:test-run
- Run the tests using the Adobe Flash Player
- flexmojos:test-swc
- Build a SWC containing the test classes for a specific project
- flexmojos:wrapper
- Generate an HTML wrapper for a SWF application
You can run the asdoc or asdoc-report goals to generate documentation
for Actionscript. Once the goals has completed, the documentation will
be saved to ${basedir}/target/asdoc as
HTML. Figure 13.9, “Actionscript Documentation Generated by the FlexMojos Plugin” shows the result of running the
asdoc goal against the Flexmojos application archetype project.
FlexMojos contains a number of goals which compile Actionscript and MXML into SWCs and SWFs. The compile-swc and compile-swf goals are used to generate output from a project’s source, and test-compile is used to compile unit tests. In the simple projects created by the FlexMojos archetypes, the compile-swc and compile-swf goals are called because the project customizes the lifecycle and binds either compile-swc or compile-swf to the compile phase and test-compile to the test-compile phase. If you need to configure the options for the FlexMojos compiler, you would configure the FlexMojos plugin configuration. For example, if you wanted the application with the POM shown in POM for Flex Application Archetype to ignore certain code-level warnings on compile and use some customized font settings, you might use the plugin configuration shown in Customizing the Compiler Plugin.
Customizing the Compiler Plugin.
<build>
<sourceDirectory>src/main/flex</sourceDirectory>
<testSourceDirectory>src/test/flex</testSourceDirectory>
<plugins>
<plugin>
<groupId>org.sonatype.flexmojos</groupId>
<artifactId>flexmojos-maven-plugin</artifactId>
<version>${flexmojos.version}</version>
<extensions>true</extensions>
<configuration>
<configurationReport>true</configurationReport>
<warnings>
<arrayTostringChanges>true</arrayTostringChanges>
<duplicateArgumentNames>false</duplicateArgumentNames>
</warnings>
<fonts>
<advancedAntiAliasing>true</advancedAntiAliasing>
<flashType>true</flashType>
<languages>
<englishRange>U+0020-U+007E</englishRange>
</languages>
<localFontsSnapshot>
${basedir}/src/main/resources/fonts.ser
</localFontsSnapshot>
<managers>
<manager>flash.fonts.BatikFontManager</manager>
</managers>
<maxCachedFonts>20</maxCachedFonts>
<maxGlyphsPerFace>1000</maxGlyphsPerFace>
</fonts>
</configuration>
</plugin>
</plugins>
</build>
To generate Flex Builder project files for a FlexMojos project,
configure the plugin groups as described in
Section 13.2.4, “Adding FlexMojos to Your Maven Settings' Plugin Groups”, and run the flexbuilder goal:
$ mvn flexmojos:flexbuilder
Running this goal will create a .project, .settings/org.eclipse.core.resources.prefs, .actionScriptProperties, and .flexLibProperties.
