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. 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 subdirectory. (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 3.4.0 2024-06-16 Clean up after the build. Git / GitHub Jira MCLEAN
compiler B 3.13.0 2024-03-15 Compiles Java sources. Git / GitHub Jira MCOMPILER
deploy B 3.1.3 2024-08-19 Deploy the built artifact to the remote repository. Git / GitHub Jira MDEPLOY
failsafe B 3.5.2 2024-10-30 Run the JUnit integration tests in an isolated classloader. Git / GitHub Jira SUREFIRE
install B 3.1.3 2024-08-19 Install the built artifact into the local repository. Git / GitHub Jira MINSTALL
resources B 3.3.1 2023-03-21 Copy the resources to the output directory for including in the JAR. Git / GitHub Jira MRESOURCES
site B 3.21.0 2024-10-18 Generate a site for the current project. Git / GitHub Jira MSITE
surefire B 3.5.2 2024-10-30 Run the JUnit unit tests in an isolated classloader. Git / GitHub Jira SUREFIRE
verifier B 1.1 2015-04-14 Useful for integration tests - verifies the existence of certain conditions. Git / GitHub Jira MVERIFIER
Packaging types/tools These plugins relate to packaging respective artifact types.
ear B 3.3.0 2022-10-18 Generate an EAR from the current project. Git / GitHub Jira MEAR
ejb B 3.2.1 2022-04-18 Build an EJB (and optional client) from the current project. Git / GitHub Jira MEJB
jar B 3.4.2 2024-06-16 Build a JAR from the current project. Git / GitHub Jira MJAR
rar B 3.0.0 2022-07-17 Build a RAR from the current project. Git / GitHub Jira MRAR
war B 3.4.0 2023-06-11 Build a WAR from the current project. Git / GitHub Jira MWAR
app-client/acr B 3.1.0 2018-06-19 Build a JavaEE application client from the current project. Git / GitHub Jira MACR
shade B 3.6.0 2024-05-31 Build an Uber-JAR from the current project, including dependencies. Git / GitHub Jira MSHADE
source B 3.3.1 2024-04-02 Build a source-JAR from the current project. Git / GitHub Jira MSOURCES
jlink B 3.2.0 2024-02-01 Build Java Run Time Image. Git / GitHub Jira MJLINK
jmod B 3.0.0-alpha-1 2017-09-17 Build Java JMod files. Git / GitHub Jira MJMOD
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. Git / GitHub Jira MCHANGELOG
changes B+R 2.12.1 2016-11-01 Generate a report from an issue tracker or a change document. Git / GitHub Jira MCHANGES
checkstyle B+R 3.6.0 2024-10-22 Generate a Checkstyle report. Git / GitHub Jira MCHECKSTYLE
doap B 1.2 2015-03-17 Generate a Description of a Project (DOAP) file from a POM. Git / GitHub Jira MDOAP
javadoc B+R 3.11.1 2024-10-30 Generate Javadoc for the project. Git / GitHub Jira MJAVADOC
jdeps B 3.1.2 2019-06-12 Run JDK's JDeps tool on the project. Git / GitHub Jira MJDEPS
jxr R 3.6.0 2024-10-22 Generate a source cross reference. Git / GitHub Jira JXR
linkcheck R 1.2 2014-10-08 Generate a Linkcheck report of your project's documentation. Git / GitHub Jira MLINKCHECK
pmd B+R 3.26.0 2024-10-25 Generate a PMD/CPD report. Git / GitHub Jira MPMD
plugin-report R 3.15.1 2024-10-22 Create a plugin documentation for any mojos found in the source tree. Git / GitHub Jira MPLUGIN
project-info-reports R 3.8.0 2024-10-18 Generate standard project reports. Git / GitHub Jira MPIR
surefire-report R 3.5.2 2024-10-30 Generate a report based on the results of unit tests. Git / GitHub Jira SUREFIRE
Tools These are miscellaneous tools available through Maven by default.
antrun B 3.1.0 2022-04-18 Run a set of ant tasks from a phase of the build. Git / GitHub Jira MANTRUN
artifact B 3.5.3 2024-10-27 Manage artifacts tasks like buildinfo. Git / GitHub Jira MARTIFACT
archetype B 3.3.1 2024-10-25 Generate a skeleton project structure from an archetype. Git / GitHub Jira ARCHETYPE
assembly B 3.7.1 2024-03-15 Build an assembly (distribution) of sources and/or binaries. Git / GitHub Jira MASSEMBLY
dependency B+R 3.8.1 2024-10-18 Dependency manipulation (copy, unpack) and analysis. Git / GitHub Jira MDEP
enforcer B 3.5.0 2024-05-26 Environmental constraint checking (Maven Version, JDK etc), User Custom Rule Execution. Git / GitHub Jira MENFORCER
gpg B 3.2.7 2024-09-24 Create signatures for the artifacts and poms. Git / GitHub Jira MGPG
help B 3.5.1 2024-10-18 Get information about the working environment for the project. Git / GitHub Jira MPH
invoker B+R 3.8.1 2024-10-18 Run a set of Maven projects and verify the output. Git / GitHub Jira MINVOKER
jarsigner B 3.1.0 2024-09-03 Signs or verifies project artifacts. Git / GitHub Jira MJARSIGNER
jdeprscan B 3.0.0-alpha-1 2017-11-15 Run JDK's JDeprScan tool on the project. Git / GitHub Jira MJDEPRSCAN
patch B 1.2 2015-03-09 Use the gnu patch tool to apply patch files to source code. Git / GitHub Jira MPATCH
pdf B 1.6.1 2022-08-16 Generate a PDF version of your project's documentation. Git / GitHub Jira MPDF
plugin B 3.15.1 2024-10-22 Create a Maven plugin descriptor for any mojos found in the source tree, to include in the JAR. Git / GitHub Jira MPLUGIN
release B 3.1.1 2024-07-11 Release the current project - updating the POM and tagging in the SCM. Git / GitHub Jira MRELEASE
remote-resources B 3.2.0 2024-03-03 Copy remote resources to the output directory for inclusion in the artifact. Git / GitHub Jira MRRESOURCES
scm B 2.1.0 2024-04-14 Execute SCM commands for the current project. Git / GitHub Jira SCM
scm-publish B 3.3.0 2024-06-16 Publish your Maven website to a scm location. Git / GitHub Jira MSCMPUB
scripting B 3.0.0 2021-03-01 The Maven Scripting Plugin wraps the Scripting API according to JSR223. Git / GitHub Jira MSCRIPTING
stage B 1.0 2015-03-03 Assists with release staging and promotion. Git / GitHub Jira MSTAGE
toolchains B 3.2.0 2024-04-21 Allows to share configuration across plugins. Git / GitHub Jira MTOOLCHAINS
wrapper B 3.3.2 2024-05-24 Download and unpack the maven wrapper distribution Git / GitHub Jira MWRAPPER

* 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
ant B 2.4 2019-06-02 Generate an Ant build file for the project.
docck B 1.2 2023-10-22 Documentation checker plugin.
eclipse B 2.10 2015-10-07 Generate an Eclipse project files for the current project.
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).
repository B 2.4 2019-04-30 Plugin to help with repository-based tasks.

Outside The Maven Land

At MojoHaus (formerly known as codehaus.org)

There are also many plug-ins available at the MojoHaus project at GitHub.

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 directories to build.
buildplan Inspect the lifecycle of your 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.
nar-maven-plugin Compiles C, C++, Fortran for different architectures.
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.

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.
OWASP dependency-check OWASP Dependency-check Project Run OWASP Dependency-Check, a utility that identifies project dependencies and checks if there are any known, publicly disclosed, vulnerabilities.
CycloneDX CycloneDX Project Generate Software Bill of Materials (SBOM) in CycloneDX format.
pgpverify Simplify4U Verify PGP signature of all project dependencies.

Resources

  1. Guide to Configuring Plugins