Available Plugins

Maven is - at its heart - a plugin execution framework; all work is done by plugins. Looking for a specific goal to execute? This page lists the core plugins and others.

Supported By The Maven Project

To see the most up-to-date list browse the Maven repository at http://repo1.maven.org/maven2/, specifically the org/apache/maven/plugins subfolder. (Plugins are organized according to a directory structure that resembles the standard Java package naming convention)

Plugin Version Release Date Description Source Repository Issue Tracking
Core plugins Plugins corresponding to default core phases (ie. clean, compile). They may have muliple goals as well.
clean 2.2 2007-12-03 Clean up after the build. SVN JIRA
compiler 2.0.2 2007-02-13 Compiles Java sources. SVN JIRA
deploy 2.4 2008-08-06 Deploy the built artifact to the remote repository. SVN JIRA
install 2.2 2007-05-17 Install the built artifact into the local repository. SVN JIRA
resources 2.2 2006-05-14 Copy the resources to the output directory for including in the JAR. SVN JIRA
site 2.0-beta-7 2008-07-02 Generate a site for the current project. SVN JIRA
surefire 2.4.3 2008-05-14 Run the Junit tests in an isolated classloader. SVN JIRA
verifier 1.0-beta-1 2006-05-07 Useful for integration tests - verifies the existence of certain conditions. SVN JIRA
Packaging types / tools These plugins relate to packaging respective artifact types.
ear 2.3.1 2007-08-21 Generate an EAR from the current project. SVN JIRA
ejb 2.1 2007-02-09 Build an EJB (and optional client) from the current project. SVN JIRA
jar 2.2 2008-01-16 Build a JAR from the current project. SVN JIRA
rar 2.2 2007-02-28 Build a RAR from the current project. SVN JIRA
war 2.1-alpha-2 2008-08-14 Build a WAR from the current project. SVN JIRA
shade 1.1 2008-05-27 Build an Uber-JAR from the current project, including dependencies. SVN JIRA
Reporting plugins Plugins which generate reports, are configured as reports in the POM and run under the site generation lifecycle.
changelog 2.1 2007-07-25 Generate a list of recent changes from your SCM. SVN JIRA
changes 2.0 2008-04-16 Generate a report from issue tracking or a change document. SVN JIRA
checkstyle 2.2 2008-06-04 Generate a checkstyle report. SVN JIRA
clover 2.4 2007-04-23 Generate a Clover report. NOTE: Moved to Atlassian.com SVN JIRA
doap 1.0 2008-08-01 Generate a Description of a Project (DOAP) file from a POM. SVN JIRA
docck 1.0-beta-2 2007-08-09 Documentation checker plugin. SVN JIRA
javadoc 2.5 2008-08-26 Generate Javadoc for the project. SVN JIRA
jxr 2.1 2007-04-05 Generate a source cross reference. SVN JIRA
pmd 2.4 2008-01-08 Generate a PMD report. SVN JIRA
project-info-reports 2.1 2008-07-28 Generate standard project reports. SVN JIRA
surefire-report 2.4.3 2008-05-14 Generate a report based on the results of unit tests. SVN JIRA
Tools These are miscellaneous tools available through Maven by default.
ant 2.1 2008-05-29 Generate an Ant build file for the project. SVN JIRA
antrun 1.2 2008-07-25 Run a set of ant tasks from a phase of the build. SVN JIRA
archetype 2.0-alpha-2 2008-04-28 Generate a skeleton project structure from an archetype. SVN JIRA
assembly 2.2-beta-2 2008-02-29 Build an assembly (distribution) of sources and/or binaries. SVN JIRA
dependency 2.0 2008-01-22 Dependency manipulation (copy, unpack) and analysis. SVN JIRA
enforcer 1.0-alpha-3 2007-07-10 Environmental constraint checking (Maven Version, JDK etc), User Custom Rule Execution. SVN JIRA
gpg 1.0-alpha-4 2007-09-28 Create signatures for the artifacts and poms. SVN JIRA
help 2.0.2 2007-11-27 Get information about the working environment for the project. SVN JIRA
invoker 1.2.1 2008-08-09 Run a set of Maven projects and verify the output. SVN JIRA
one 1.2 2007-09-12 A plugin for interacting with legacy Maven 1.x repositories and builds. SVN JIRA
patch 1.0 2008-01-26 Use the gnu patch tool to apply patch files to source code. SVN JIRA
plugin 2.4.3 2008-08-20 Create a Maven plugin descriptor for any Mojo's found in the source tree, to include in the JAR. SVN JIRA
release 2.0-beta-7 2007-10-27 Release the current project - updating the POM and tagging in the SCM. SVN JIRA
remote-resources 1.0 2008-03-20 Copy remote resources to the output directory for inclusion in the artifact. SVN JIRA
repository 2.1 2008-06-26 Plugin to help with repository-based tasks. SVN JIRA
scm 1.0 2007-05-25 Generate a SCM for the current project. SVN JIRA
source 2.0.4 2007-11-11 Build a JAR of sources for use in IDEs and distribution to the repository. SVN JIRA
stage 1.0-alpha-1 2008-02-22 Assists with release staging and promotion. SVN JIRA
IDEs Plugins that simplify integration with integrated developer environments.
eclipse 2.5.1 2008-04-05 Generate an Eclipse project file for the current project. SVN JIRA
idea 2.2 2008-08-08 Create/update an IDEA workspace for the current project (individual modules are created as IDEA modules) SVN JIRA

There are also some sandbox plugins into our source reposity.

Outside The Maven Land

At codehaus.org

There are also many plug-ins available at the Mojo project at Codehaus.

To see the most up-to-date list, browse the Codehaus repository at http://repository.codehaus.org/, specifically the org/codehaus/mojo subfolder. Here are a few common ones:

Plugin (see complete list with version) Description
build-helper Attach extra artifacts and source folders to build.
castor Generate sources from an XSD using Castor.
javacc Generate sources from a JavaCC grammer.
jdepend Generate a report on code metrics using JDepend.
native Compiles C and C++ code with native compilers.
sql Executes SQL scripts from files or inline.
taglist Generate a list of tasks based on tags in your code.

At code.google.com

There are also many plug-ins available at the Google Code.

Misc

A number of other projects provide their own Maven plugins. This includes:

Plugin Maintainer Description
cargo Cargo Project Start/stop/configure J2EE containers and deploy to them.
jaxme Apache Web Services Project Use the JaxMe JAXB implementation to generate Java sources from XML schema.
jetty Jetty Project Jetty Run a Jetty container for rapid webapp development.
jalopy Triemax Use Jalopy to format your source code.
rat Apache Incubator Project Release Audit Tool (RAT) to verify files.
Genesis Plugins Apache Geronimo Project Verify legal files in artifacts.