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.0 | 2024-08-22 | 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.20.0 | 2024-08-14 | Generate a site for the current project. | Git / GitHub | Jira MSITE |
surefire |
B | 3.5.0 | 2024-08-22 | 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.5.0 | 2024-08-19 | 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.10.0 | 2024-08-22 | 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.5.0 | 2024-08-19 | 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.25.0 | 2024-08-22 | Generate a PMD report. | Git / GitHub | Jira MPMD |
plugin-report |
R | 3.15.0 | 2024-08-22 | Create a plugin documentation for any mojos found in the source tree. | Git / GitHub | Jira MPLUGIN |
project-info-reports |
R | 3.7.0 | 2024-08-18 | Generate standard project reports. | Git / GitHub | Jira MPIR |
surefire-report |
R | 3.5.0 | 2024-08-22 | 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.1 | 2024-04-02 | Manage artifacts tasks like buildinfo. | Git / GitHub | Jira MARTIFACT |
archetype |
B | 3.3.0 | 2024-09-22 | 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.0 | 2024-08-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.5 | 2024-08-12 | Create signatures for the artifacts and poms. | Git / GitHub | Jira MGPG |
help |
B | 3.5.0 | 2024-08-18 | Get information about the working environment for the project. | Git / GitHub | Jira MPH |
invoker |
B+R | 3.8.0 | 2024-08-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.0 | 2024-08-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. |