org.apache.maven.plugin
Interface Mojo

All Known Implementing Classes:
AbstractMojo, AntMojoWrapper, BeanshellMojoAdapter

public interface Mojo

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.

Version:
$Id: Mojo.java 640545 2008-03-24 19:50:56Z bentmann $
Author:
Jason van Zyl

Field Summary
static String ROLE
          The component role hint for Plexus container
 
Method Summary
 void execute()
          Perform whatever build-process behavior this Mojo implements.
 Log getLog()
          Furnish access to the standard Maven logging mechanism which is managed in this base class.
 void setLog(Log log)
          Inject a standard Maven logging mechanism to allow this Mojo to communicate events and feedback to the user.
 

Field Detail

ROLE

static final String ROLE
The component role hint for Plexus container

Method Detail

execute

void execute()
             throws MojoExecutionException,
                    MojoFailureException
Perform whatever build-process behavior this Mojo implements.
This is the main trigger for the Mojo inside the Maven system, and allows the Mojo to communicate errors.

Throws:
MojoExecutionException - if an unexpected problem occurs. Throwing this exception causes a "BUILD ERROR" message to be displayed.
MojoFailureException - if an expected problem (such as a compilation failure) occurs. Throwing this exception causes a "BUILD FAILURE" message to be displayed.

setLog

void setLog(Log log)
Inject a standard Maven logging mechanism to allow this Mojo to communicate events and feedback to the user.

Parameters:
log - a new logger

getLog

Log getLog()
Furnish access to the standard Maven logging mechanism which is managed in this base class.

Returns:
a log4j-like logger object which allows plugins to create messages at levels of "debug", "info", "warn", and "error". This logger is the accepted means to display information to the user.


Copyright © 2001-2009 The Apache Software Foundation. All Rights Reserved.