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. There are the build and the reporting plugins:

  • Build plugins will be executed during the build and they should be configured in the <build/> element from the POM.
  • Reporting plugins will be executed during the site generation and they should be configured in the <reporting/> element from the POM. Because the result of a Reporting plugin is part of the generated site, Reporting plugins should be both internationalized and localized. You can read more about the localization of our plugins and how you can help.

Supported By The Maven Project

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

Plugin Type* Version Release Date Description Source Repository Issue Tracking
Core plugins Plugins corresponding to default core phases (ie. clean, compile). They may have multiple goals as well.
clean B 2.6.1 2014-10-26 Clean up after the build. SVN JIRA
compiler B 3.3 2015-03-26 Compiles Java sources. SVN JIRA
deploy B 2.8.2 2014-08-27 Deploy the built artifact to the remote repository. SVN JIRA
failsafe B 2.18.1 2014-12-28 Run the JUnit integration tests in an isolated classloader. GIT JIRA
install B 2.5.2 2014-08-27 Install the built artifact into the local repository. SVN JIRA
resources B 2.7 2014-09-29 Copy the resources to the output directory for including in the JAR. SVN JIRA
site B 3.4 2014-07-07 Generate a site for the current project. SVN JIRA
surefire B 2.18.1 2014-12-28 Run the JUnit unit tests in an isolated classloader. GIT JIRA
verifier B 1.0 2010-01-30 Useful for integration tests - verifies the existence of certain conditions. SVN JIRA
Packaging types/tools These plugins relate to packaging respective artifact types.
ear B 2.10 2014-12-31 Generate an EAR from the current project. SVN JIRA
ejb B 2.5 2015-01-12 Build an EJB (and optional client) from the current project. SVN JIRA
jar B 2.6 2015-03-09 Build a JAR from the current project. SVN JIRA
rar B 2.4 2014-09-08 Build a RAR from the current project. SVN JIRA
war B 2.6 2015-01-08 Build a WAR from the current project. SVN JIRA
app-client/acr B 1.1 2014-09-02 Build a JavaEE application client from the current project. SVN JIRA
shade B 2.3 2014-05-02 Build an Uber-JAR from the current project, including dependencies. SVN JIRA
source B 2.4 2014-10-07 Build a source-JAR from the current project. SVN JIRA
Reporting plugins Plugins which generate reports, are configured as reports in the POM and run under the site generation lifecycle.
changelog R 2.3 2014-06-24 Generate a list of recent changes from your SCM. SVN JIRA
changes B+R 2.11 2014-09-28 Generate a report from an issue tracker or a change document. SVN JIRA
checkstyle B+R 2.15 2015-03-20 Generate a Checkstyle report. SVN JIRA
doap B 1.2 2015-03-17 Generate a Description of a Project (DOAP) file from a POM. SVN JIRA
docck B 1.0 2008-11-16 Documentation checker plugin. SVN JIRA
javadoc B+R 2.10.2 2015-03-17 Generate Javadoc for the project. SVN JIRA
jxr R 2.5 2014-11-02 Generate a source cross reference. SVN JIRA
linkcheck R 1.2 2014-10-08 Generate a Linkcheck report of your project's documentation. SVN JIRA
pmd B+R 3.4 2015-02-03 Generate a PMD report. SVN JIRA
project-info-reports R 2.8 2015-01-05 Generate standard project reports. SVN JIRA
surefire-report R 2.18.1 2014-12-28 Generate a report based on the results of unit tests. GIT JIRA
Tools These are miscellaneous tools available through Maven by default.
ant B 2.4 2014-12-15 Generate an Ant build file for the project. SVN JIRA
antrun B 1.8 2014-12-26 Run a set of ant tasks from a phase of the build. SVN JIRA
archetype B 2.3 2015-03-13 Generate a skeleton project structure from an archetype. SVN JIRA
assembly B 2.5.3 2014-12-17 Build an assembly (distribution) of sources and/or binaries. SVN JIRA
dependency B+R 2.10 2015-01-27 Dependency manipulation (copy, unpack) and analysis. SVN JIRA
enforcer B 1.4 2015-01-29 Environmental constraint checking (Maven Version, JDK etc), User Custom Rule Execution. SVN JIRA
gpg B 1.6 2015-01-19 Create signatures for the artifacts and poms. SVN JIRA
help B 2.2 2013-02-23 Get information about the working environment for the project. SVN JIRA
invoker B+R 1.10 2015-04-03 Run a set of Maven projects and verify the output. SVN JIRA
jarsigner B 1.4 2015-01-21 Signs or verifies project artifacts. SVN JIRA
patch B 1.2 2015-03-09 Use the gnu patch tool to apply patch files to source code. SVN JIRA
pdf B 1.3 2015-02-16 Generate a PDF version of your project's documentation. SVN JIRA
plugin B+R 3.4 2015-01-04 Create a Maven plugin descriptor for any mojos found in the source tree, to include in the JAR. SVN JIRA
release B 2.5.1 2014-09-22 Release the current project - updating the POM and tagging in the SCM. SVN JIRA
remote-resources B 1.5 2013-08-14 Copy remote resources to the output directory for inclusion in the artifact. SVN JIRA
repository B 2.4 2015-02-22 Plugin to help with repository-based tasks. SVN JIRA
scm B 1.9.4 2015-04-01 Execute SCM commands for the current project. GIT JIRA
scm-publish B 1.1 2014-05-18 Publish your Maven website to a scm location. SVN JIRA
stage B 1.0 2015-03-03 Assists with release staging and promotion. SVN JIRA
toolchains B 1.1 2014-11-12 Allows to share configuration across plugins. SVN JIRA
IDEs Plugins that simplify integration with integrated developer environments.
eclipse B 2.9 2012-02-14 Generate an Eclipse project file for the current project. SVN JIRA

* Build or Reporting plugin

There are also some sandbox plugins into our source repository.

Previous archived versions of plugins reference documentations are located here.

Retired

Plugin Type* Version Retired Date Description
idea B 2.2.1 2013-07-26 Create/update an IDEA workspace for the current project (individual modules are created as IDEA modules)
one B 1.3 2013-07-30 A plugin for interacting with legacy Maven 1.x repositories and builds.
reactor B 1.1 2014-03-24 Build a subset of interdependent projects in a reactor (Maven 2 only).

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://nexus.codehaus.org/, specifically the org/codehaus/mojo subfolder of the releases-repository. Here are a few common ones:

Plugin (see complete list with version) Description
animal-sniffer Build signatures of APIs (JDK for example) and checks your classes against them.
build-helper Attach extra artifacts and source folders to build.
castor Generate sources from an XSD using Castor.
clirr Compare binaries or sources for compatibility using Clirr
javacc Generate sources from a JavaCC grammar.
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.
versions Manage versions of your project, its modules, dependencies and plugins.

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.
clover Atlassian Clover Generate a Clover report.
jetty Jetty Project Jetty Run a Jetty container for rapid webapp development.
jalopy Triemax Use Jalopy to format your source code.
rat Apache Creadur Project Release Audit Tool (RAT) to verify files.
Genesis Plugins Apache Geronimo Project Verify legal files in artifacts.
Apache Tomcat Apache Tomcat Project Run an Apache Tomcat container for rapid webapp development.

Back to top

Reflow Maven skin by Andrius Velykis.