All Classes and Interfaces

Abstract class to provide most of the infrastructure required to implement a Mojo except for the execute method.
The implementation should have a Mojo annotation with the name of the goal:
Base exception.
Interface to allow Mojos to communicate with each others Mojos, other than project's source root and project's attachment.
The plugin manager would pull the context out of the plugin container context, and populate it into the Mojo.
A set of goals to execute.
A custom lifecycle mapping definition.
Root element of the lifecycle.xml file.
Class LifecycleMappingsXpp3Reader.
Class LifecycleMappingsXpp3Writer.
This interface supplies the API for providing feedback to the user from the Mojo, using standard Maven channels.
There should be no big surprises here, although you may notice that the methods accept java.lang.CharSequence rather than java.lang.String.
This interface forms the contract required for Mojos to interact with the Maven infrastructure.
It features an execute() method, which triggers the Mojo's build-process behavior, and can throw a MojoExecutionException or MojoFailureException if error conditions occur.
Also included is the setLog(...) method, which simply allows Maven to inject a logging mechanism which will allow the Mojo to communicate to the outside world through standard Maven channels.
The bean containing the Mojo descriptor.
For more information about the usage tag, have a look to: TODO is there a need for the delegation of MavenMojoDescriptor to this? Why not just extend ComponentDescriptor here?
An exception occurring during the execution of a plugin.
Throwing this exception causes a "BUILD ERROR" message to be displayed.
An exception occurring during the execution of a plugin (such as a compilation failure).
Throwing this exception causes a "BUILD FAILURE" message to be displayed.
A phase mapping definition.
Describes a component requirement.
Logger with "standard" output and error output stream.