CINXE.COM

Plugin Developers Centre – Maven

<!DOCTYPE html> <!-- | Generated by Apache Maven Doxia Site Renderer 2.0.0 from content/apt/plugin-developers/index.apt at 2025-02-16 | Rendered using Apache Maven Fluido Skin 2.0.1 --> <html xmlns="http://www.w3.org/1999/xhtml" lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="generator" content="Apache Maven Doxia Site Renderer 2.0.0" /> <meta name="author" content="Brett Porter" /> <meta name="date" content="2008-01-01" /> <title>Plugin Developers Centre – Maven</title> <link rel="stylesheet" href="../css/apache-maven-fluido-2.0.1.min.css" /> <link rel="stylesheet" href="../css/site.css" /> <link rel="stylesheet" href="../css/print.css" media="print" /> <script src="../js/apache-maven-fluido-2.0.1.min.js"></script> <!-- Matomo --> <script> var _paq = window._paq = window._paq || []; _paq.push(['disableCookies']); _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); (function() { var u="https://analytics.apache.org/"; _paq.push(['setTrackerUrl', u+'/matomo.php']); _paq.push(['setSiteId', '3']); var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; g.async=true; g.src=u+'/matomo.js'; s.parentNode.insertBefore(g,s); })(); </script> <!-- End Matomo Code --> </head> <body> <div class="container-fluid container-fluid-top"> <header> <div id="banner"> <div class="pull-left"><div id="bannerLeft"><h1><a href="https://www.apache.org/"><img class="class java.lang.Object" src="../images/apache-maven-project.png" /></a></h1></div></div> <div class="pull-right"><div id="bannerRight"><h1><a href=".././"><img class="class java.lang.Object" src="../images/maven-logo-black-on-white.png" /></a></h1></div></div> <div class="clear"><hr/></div> </div> <div id="breadcrumbs"> <ul class="breadcrumb"> <li><a href="https://www.apache.org/" class="externalLink">Apache</a><span class="divider">/</span></li> <li><a href="../index.html">Maven</a><span class="divider">/</span></li> <li class="active">Plugin Developers Centre <a href="https://github.com/apache/maven-site/tree/master/content/apt/plugin-developers/index.apt"><img src="../images/accessories-text-editor.png" alt="Edit" /></a></li> <li id="publishDate" class="pull-right"><span class="divider">|</span> Last Published: 2025-02-16</li> <li class="pull-right"><span class="divider">|</span> <a href="../scm.html">Get Sources</a></li> <li class="pull-right"><a href="../download.cgi">Download</a></li> </ul> </div> </header> <div class="row-fluid"> <header id="leftColumn" class="span2"> <nav class="well sidebar-nav"> <ul class="nav nav-list"> <li><a href="../index.html">Welcome</a></li> <li><a href="https://www.apache.org/licenses/" class="externalLink">License</a></li> <li class="nav-header">About Maven</li> <li><a href="../what-is-maven.html">What is Maven?</a></li> <li><a href="../maven-features.html">Features</a></li> <li><a href="../download.html">Download</a></li> <li><a href="../users/index.html"><span class="icon-chevron-right"></span>Use</a></li> <li><a href="../docs/history.html">Release Notes</a></li> <li class="nav-header">Documentation</li> <li><a href="../plugins/index.html">Maven Plugins</a></li> <li><a href="../extensions/index.html">Maven Extensions</a></li> <li><a href="../tools/index.html">Maven Tools</a></li> <li><a href="../guides/index.html">Index (category)</a></li> <li><a href="../users/index.html"><span class="icon-chevron-right"></span>User Centre</a></li> <li class="active"><a><span class="icon-chevron-down"></span>Plugin Developer Centre</a> <ul class="nav nav-list"> <li><a href="../guides/introduction/introduction-to-plugins.html">Introduction</a></li> <li><a href="../guides/plugin/guide-java-plugin-development.html">Your First Mojo</a></li> <li><a href="../guides/plugin/guide-java-report-plugin-development.html">Your First Report Mojo</a></li> <li><a href="../plugin-developers/plugin-testing.html">Testing Plugins</a></li> <li><a href="../developers/mojo-api-specification.html">Mojo API</a></li> <li><a href="../maven-logging.html">Maven 3.1.x logging</a></li> <li><a href="../plugin-developers/common-bugs.html">Common Bugs and Pitfalls</a></li> <li><a href="../examples/maven-3-lifecycle-extensions.html">Maven Lifecycle Extensions</a></li> <li><a href="../plugin-developers/cookbook/plexus-plugin-upgrade.html">Plexus Javadoc to Plexus Annotations</a></li> <li><a href="../maven-jsr330.html">Using JSR-330</a></li> </ul></li> <li><a href="../repositories/index.html"><span class="icon-chevron-right"></span>Maven Repository Centre</a></li> <li><a href="../developers/index.html"><span class="icon-chevron-right"></span>Maven Developer Centre</a></li> <li><a href="../articles.html">Books and Resources</a></li> <li><a href="../security.html">Security</a></li> <li class="nav-header">Community</li> <li><a href="../community.html">Community Overview</a></li> <li><a href="../project-roles.html">Project Roles</a></li> <li><a href="../guides/development/guide-helping.html">How to Contribute</a></li> <li><a href="../users/getting-help.html">Getting Help</a></li> <li><a href="../issue-management.html">Issue Management</a></li> <li><a href="../scm.html">Getting Maven Source</a></li> <li><a href="../team.html">The Maven Team</a></li> <li class="nav-header">Project Documentation</li> <li><a href="../project-info.html"><span class="icon-chevron-right"></span>Project Information</a></li> <li class="nav-header">Maven Projects</li> <li><a href="../ref/current">Maven</a></li> <li><a href="../archetypes/index.html">Archetypes</a></li> <li><a href="../extensions/index.html">Extensions</a></li> <li><a href="../pom/index.html">Parent POMs</a></li> <li><a href="../plugins/index.html">Plugins</a></li> <li><a href="../skins/index.html">Skins</a></li> <li><a><span class="icon-chevron-down"></span>Components</a> <ul class="nav nav-list"> <li><a href="../archetype/index.html">Archetype</a></li> <li><a href="../resolver/index.html">Artifact Resolver</a></li> <li><a href="../doxia/index.html">Doxia</a></li> <li><a href="../maven-indexer/index.html">Indexer</a></li> <li><a href="../jxr/index.html">JXR</a></li> <li><a href="../plugin-testing/index.html">Plugin Testing</a></li> <li><a href="../plugin-tools/index.html">Plugin Tools</a></li> <li><a href="../apache-resource-bundles/index.html">Resource Bundles</a></li> <li><a href="../scm/index.html">SCM</a></li> <li><a href="../shared/index.html">Shared Components</a></li> <li><a href="../surefire/index.html">Surefire</a></li> <li><a href="../wagon/index.html">Wagon</a></li> </ul></li> <li class="nav-header">ASF</li> <li><a href="https://www.apache.org/foundation/how-it-works.html" class="externalLink">How Apache Works</a></li> <li><a href="https://www.apache.org/foundation/" class="externalLink">Foundation</a></li> <li><a href="https://privacy.apache.org/policies/privacy-policy-public.html" class="externalLink">Data Privacy</a></li> <li><a href="https://www.apache.org/foundation/sponsorship.html" class="externalLink">Sponsoring Apache</a></li> <li><a href="https://www.apache.org/foundation/thanks.html" class="externalLink">Thanks</a></li> </ul> </nav> <div class="well sidebar-nav"> <div id="poweredBy"> <div class="clear"></div> <div class="clear"></div> <a href="https://maven.apache.org/" class="builtBy" target="_blank"><img class="builtBy" alt="Built by Maven" src="../images/logos/maven-feather.png" /></a> </div> </div> </header> <main id="bodyColumn" class="span10"> <section><a id="Plugin_Developers_Centre"></a> <h1>Plugin Developers Centre</h1> <p>This documentation centre is for those who are developing Maven plugins. This might be for your own build, or as an accompaniment to your third party tool.</p> <p><b>What is a Mojo?</b> A mojo is a <b>M</b>aven plain <b>O</b>ld <b>J</b>ava <b>O</b>bject. Each mojo is an executable <i>goal</i> in Maven, and a plugin is a distribution of one or more related mojos.</p> <ul> <li><a href="../guides/introduction/introduction-to-plugins.html"> Introduction to Plugin Development</a> - Introduction to concepts</li> <li><a href="../guides/plugin/guide-java-plugin-development.html"> Your First Mojo</a> - Learn how to write your first plugin</li> <li><a href="../guides/plugin/guide-java-report-plugin-development.html"> Your First Report Mojo</a> - Learn how to write your first reporting plugin</li> <li><a href="./plugin-testing.html"> Testing your Plugin</a> - How to write tests for your plugins</li> <li>TODO: creating and using custom packaging (like <a href="/archetype/archetype-packaging/"><code>maven-archetype</code> packaging</a>)</li> <li><a href="./common-bugs.html"> Common Bugs and Pitfalls</a> - Overview of problematic coding patterns</li></ul><section><a id="Reference"></a> <h2>Reference</h2> <ul> <li><a href="../developers/mojo-api-specification.html"> Mojo API and Annotation Reference</a></li> <li><a href="/plugin-tools/maven-plugin-tools-annotations/index.html"> Maven Plugin Tools and annotations</a></li> <li><a href="../ref/current/index.html"> Maven API Reference</a></li> <li><a href="../guides/mini/guide-maven-classloading.html"> Maven Class Loading</a></li></ul></section><section><a id="Extensions"></a> <h2>Extensions</h2> <ul> <li><a href="../examples/maven-3-lifecycle-extensions.html">Maven 3 lifecycle extensions</a></li> <li><a href="./cookbook/plexus-plugin-upgrade.html">How to upgrade from Plexus javadoc tags to Plexus Java annotations?</a></li> <li><a href="/maven-jsr330.html">Using JSR-330 (instead of Plexus Java annotations)</a></li></ul></section></section> </main> </div> </div> <hr/> <footer> <div class="container-fluid"> <div class="row-fluid"> <p>© 2002–2025 <a href="https://www.apache.org/">The Apache Software Foundation</a> </p> </div> </div> </footer> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10