In a current project I am on, we use the flexmojos-plugin to compile a small Flex application. The plugin has all kinds of configuration, but there is no goal configured, and so I am wondering what makes Maven "know" what goals are to be executed or not?
The plugin has something like 25 goals, and as far as I can see, it does not run them all. Therefore I assume there must be some kind of configuration in the plugin that says which goals are to be executed by default - some kind of default execution. I looked at the source for the swf-compile Mojo, and I could not see anything like a "@default" annotation, so where is it configured?
The actual mapping of plugins' goals to lifecycle's phases results from packaging type and is provided within a plugin that defines this packaging (excluding predefined packagings like jar
, ejb
etc. that are provided by the Maven distribution).
For Flexmojos, you can find it here:
http://www.jarvana.com/jarvana/view/org/sonatype/flexmojos/flexmojos-maven-plugin/4.0-pre-alpha-1/flexmojos-maven-plugin-4.0-pre-alpha-1.jar!/META-INF/plexus/components.xml
This file defines Plexus' components of type LifecycleMapping
that provide these mappings for its own packaging types: swc
, swf
, air
.