<!DOCTYPE html>
<!--
 | Generated by Apache Maven Doxia Site Renderer 1.9.2 from org.apache.maven.plugins:maven-project-info-reports-plugin:3.0.0:plugin-management at 2020-04-20
 | Rendered using Apache Maven Fluido Skin 1.9
-->
<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 1.9.2" />
    <title>Apache Struts &#x2013; Project Plugin Management</title>
    <link rel="stylesheet" href="./css/apache-maven-fluido-1.9.min.css" />
    <link rel="stylesheet" href="./css/site.css" />
    <link rel="stylesheet" href="./css/print.css" media="print" />
    <script src="./js/apache-maven-fluido-1.9.min.js"></script>
  </head>
  <body class="topBarDisabled">
    <div class="container-fluid">
      <header>
        <div id="banner">
          <div class="pull-left"><a href="http://www.apache.org/" id="bannerLeft"><img src="http://www.apache.org/images/asf-logo.gif"  alt="Apache Software Foundation"/></a></div>
          <div class="pull-right"><a href="http://struts.apache.org/" id="bannerRight"><img src="http://struts.apache.org/img/struts-logo.svg"  alt="Apache Struts"/></a></div>
          <div class="clear"><hr/></div>
        </div>

        <div id="breadcrumbs">
          <ul class="breadcrumb">
        <li id="publishDate">Last Published: 2020-04-20</li>
      <li id="projectVersion" class="pull-right">Version: 2.6-SNAPSHOT</li>
      <li class="pull-right"><span class="divider">|</span>
<a href="http://struts.apache.org/" class="externalLink" title="Struts">Struts</a></li>
      <li class="pull-right"><a href="http://www.apache.org/" class="externalLink" title="Apache">Apache</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 class="nav-header">Parent Project</li>
    <li><a href="../index.html" title="Struts 2"><span class="none"></span>Struts 2</a></li>
   <li class="nav-header">Project Documentation</li>
    <li><a href="project-info.html" title="Project Information"><span class="icon-chevron-down"></span>Project Information</a>
     <ul class="nav nav-list">
      <li><a href="ci-management.html" title="CI Management"><span class="none"></span>CI Management</a></li>
      <li><a href="dependencies.html" title="Dependencies"><span class="none"></span>Dependencies</a></li>
      <li><a href="dependency-info.html" title="Dependency Information"><span class="none"></span>Dependency Information</a></li>
      <li><a href="dependency-management.html" title="Dependency Management"><span class="none"></span>Dependency Management</a></li>
      <li><a href="distribution-management.html" title="Distribution Management"><span class="none"></span>Distribution Management</a></li>
      <li><a href="index.html" title="About"><span class="none"></span>About</a></li>
      <li><a href="issue-management.html" title="Issue Management"><span class="none"></span>Issue Management</a></li>
      <li><a href="licenses.html" title="Licenses"><span class="none"></span>Licenses</a></li>
      <li><a href="mailing-lists.html" title="Mailing Lists"><span class="none"></span>Mailing Lists</a></li>
      <li><a href="modules.html" title="Project Modules"><span class="none"></span>Project Modules</a></li>
      <li class="active"><a href="#"><span class="none"></span>Plugin Management</a></li>
      <li><a href="plugins.html" title="Plugins"><span class="none"></span>Plugins</a></li>
      <li><a href="scm.html" title="Source Code Management"><span class="none"></span>Source Code Management</a></li>
      <li><a href="summary.html" title="Summary"><span class="none"></span>Summary</a></li>
      <li><a href="team.html" title="Team"><span class="none"></span>Team</a></li>
     </ul></li>
    <li><a href="project-reports.html" title="Project Reports"><span class="icon-chevron-right"></span>Project Reports</a></li>
   <li class="nav-header">Modules</li>
    <li><a href="struts2-async-plugin/index.html" title="Struts 2 Async Plugin"><span class="none"></span>Struts 2 Async Plugin</a></li>
    <li><a href="struts2-bean-validation-plugin/index.html" title="Struts 2 Bean Validation Plugin"><span class="none"></span>Struts 2 Bean Validation Plugin</a></li>
    <li><a href="struts2-cdi-plugin/index.html" title="Struts 2 CDI Plugin"><span class="none"></span>Struts 2 CDI Plugin</a></li>
    <li><a href="struts2-config-browser-plugin/index.html" title="Struts 2 Configuration Browser Plugin"><span class="none"></span>Struts 2 Configuration Browser Plugin</a></li>
    <li><a href="struts2-convention-plugin/index.html" title="Struts 2 Convention Plugin"><span class="none"></span>Struts 2 Convention Plugin</a></li>
    <li><a href="struts2-dwr-plugin/index.html" title="Struts 2 DWR Plugin"><span class="none"></span>Struts 2 DWR Plugin</a></li>
    <li><a href="struts2-embeddedjsp-plugin/index.html" title="DEPRECATED: Struts 2 Embedded JSP Plugin"><span class="none"></span>DEPRECATED: Struts 2 Embedded JSP Plugin</a></li>
    <li><a href="struts2-gxp-plugin/index.html" title="Struts 2 GXP Plugin"><span class="none"></span>Struts 2 GXP Plugin</a></li>
    <li><a href="struts2-jasperreports-plugin/index.html" title="Struts 2 Jasper Reports Plugin"><span class="none"></span>Struts 2 Jasper Reports Plugin</a></li>
    <li><a href="struts2-javatemplates-plugin/index.html" title="Struts 2 Java Templates Plugin"><span class="none"></span>Struts 2 Java Templates Plugin</a></li>
    <li><a href="struts2-jfreechart-plugin/index.html" title="Struts 2 JFreeChart Plugin"><span class="none"></span>Struts 2 JFreeChart Plugin</a></li>
    <li><a href="struts2-json-plugin/index.html" title="Struts 2 JSON Plugin"><span class="none"></span>Struts 2 JSON Plugin</a></li>
    <li><a href="struts2-junit-plugin/index.html" title="Struts 2 JUnit Plugin"><span class="none"></span>Struts 2 JUnit Plugin</a></li>
    <li><a href="struts2-osgi-plugin/index.html" title="Struts 2 OSGi Plugin"><span class="none"></span>Struts 2 OSGi Plugin</a></li>
    <li><a href="struts2-oval-plugin/index.html" title="Struts 2 OVal Plugin"><span class="none"></span>Struts 2 OVal Plugin</a></li>
    <li><a href="struts2-pell-multipart-plugin/index.html" title="Struts 2 Pell Multipart Plugin"><span class="none"></span>Struts 2 Pell Multipart Plugin</a></li>
    <li><a href="struts2-plexus-plugin/index.html" title="Struts 2 Plexus Plugin"><span class="none"></span>Struts 2 Plexus Plugin</a></li>
    <li><a href="struts2-portlet-plugin/index.html" title="Struts 2 Portlet Plugin"><span class="none"></span>Struts 2 Portlet Plugin</a></li>
    <li><a href="struts2-portlet-mocks-plugin/index.html" title="Struts 2 Portlet Mocks Plugin"><span class="none"></span>Struts 2 Portlet Mocks Plugin</a></li>
    <li><a href="struts2-portlet-tiles-plugin/index.html" title="Struts 2 Portlet Tiles Plugin"><span class="none"></span>Struts 2 Portlet Tiles Plugin</a></li>
    <li><a href="struts2-rest-plugin/index.html" title="Struts 2 REST Plugin"><span class="none"></span>Struts 2 REST Plugin</a></li>
    <li><a href="struts2-sitemesh-plugin/index.html" title="Struts 2 Sitemesh Plugin"><span class="none"></span>Struts 2 Sitemesh Plugin</a></li>
    <li><a href="struts2-spring-plugin/index.html" title="Struts 2 Spring Plugin"><span class="none"></span>Struts 2 Spring Plugin</a></li>
    <li><a href="struts2-testng-plugin/index.html" title="Struts 2 TestNG Plugin"><span class="none"></span>Struts 2 TestNG Plugin</a></li>
    <li><a href="struts2-tiles-plugin/index.html" title="Struts 2 Tiles Plugin"><span class="none"></span>Struts 2 Tiles Plugin</a></li>
    <li><a href="struts2-velocity-plugin/index.html" title="Struts 2 Velocity Plugin"><span class="none"></span>Struts 2 Velocity Plugin</a></li>
  </ul>
          </nav>
          <div class="well sidebar-nav">
            <hr />
            <div id="poweredBy">
              <div class="clear"></div>
              <div class="clear"></div>
              <div class="clear"></div>
<a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
            </div>
          </div>
        </header>
        <main id="bodyColumn"  class="span10" >
<section>
<h2><a name="Project_Plugin_Management"></a>Project Plugin Management</h2><a name="Project_Plugin_Management"></a>
<table border="0" class="table table-striped">
<tr class="a">
<th>GroupId</th>
<th>ArtifactId</th>
<th>Version</th></tr>
<tr class="b">
<td>org.apache.felix</td>
<td><a class="externalLink" href="http://felix.apache.org/components/bundle-plugin/">maven-bundle-plugin</a></td>
<td>4.2.1</td></tr>
<tr class="a">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="http://maven.apache.org/plugins/maven-antrun-plugin/">maven-antrun-plugin</a></td>
<td>1.8</td></tr>
<tr class="b">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/plugins/maven-assembly-plugin/">maven-assembly-plugin</a></td>
<td>3.2.0</td></tr>
<tr class="a">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/plugins/maven-clean-plugin/">maven-clean-plugin</a></td>
<td>3.1.0</td></tr>
<tr class="b">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/plugins/maven-compiler-plugin/">maven-compiler-plugin</a></td>
<td>3.8.1</td></tr>
<tr class="a">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/plugins/maven-dependency-plugin/">maven-dependency-plugin</a></td>
<td>3.1.2</td></tr>
<tr class="b">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="http://maven.apache.org/plugins/maven-deploy-plugin/">maven-deploy-plugin</a></td>
<td>2.8.2</td></tr>
<tr class="a">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="http://maven.apache.org/plugins/maven-docck-plugin/">maven-docck-plugin</a></td>
<td>1.1</td></tr>
<tr class="b">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/plugins/maven-ear-plugin/">maven-ear-plugin</a></td>
<td>3.0.1</td></tr>
<tr class="a">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/enforcer/maven-enforcer-plugin/">maven-enforcer-plugin</a></td>
<td>3.0.0-M3</td></tr>
<tr class="b">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/surefire/maven-failsafe-plugin/">maven-failsafe-plugin</a></td>
<td>2.22.0</td></tr>
<tr class="a">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="http://maven.apache.org/plugins/maven-gpg-plugin/">maven-gpg-plugin</a></td>
<td>1.6</td></tr>
<tr class="b">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/plugins/maven-help-plugin/">maven-help-plugin</a></td>
<td>3.2.0</td></tr>
<tr class="a">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="http://maven.apache.org/plugins/maven-install-plugin/">maven-install-plugin</a></td>
<td>2.5.2</td></tr>
<tr class="b">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/plugins/maven-invoker-plugin/">maven-invoker-plugin</a></td>
<td>3.2.1</td></tr>
<tr class="a">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/plugins/maven-jar-plugin/">maven-jar-plugin</a></td>
<td>3.2.0</td></tr>
<tr class="b">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/plugins/maven-javadoc-plugin/">maven-javadoc-plugin</a></td>
<td>3.0.1</td></tr>
<tr class="a">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/plugin-tools/maven-plugin-plugin">maven-plugin-plugin</a></td>
<td>3.5.2</td></tr>
<tr class="b">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/plugins/maven-project-info-reports-plugin/">maven-project-info-reports-plugin</a></td>
<td>3.0.0</td></tr>
<tr class="a">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/maven-release/maven-release-plugin/">maven-release-plugin</a></td>
<td>3.0.0-M1</td></tr>
<tr class="b">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/plugins/maven-remote-resources-plugin/">maven-remote-resources-plugin</a></td>
<td>1.6.0</td></tr>
<tr class="a">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/plugins/maven-resources-plugin/">maven-resources-plugin</a></td>
<td>3.1.0</td></tr>
<tr class="b">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="http://maven.apache.org/scm/maven-scm-plugin/">maven-scm-plugin</a></td>
<td>1.9.5</td></tr>
<tr class="a">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/plugins/maven-scm-publish-plugin/">maven-scm-publish-plugin</a></td>
<td>3.0.0</td></tr>
<tr class="b">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/plugins/maven-shade-plugin/">maven-shade-plugin</a></td>
<td>3.1.1</td></tr>
<tr class="a">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/plugins/maven-site-plugin/">maven-site-plugin</a></td>
<td>3.7.1</td></tr>
<tr class="b">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/plugins/maven-source-plugin/">maven-source-plugin</a></td>
<td>3.2.1</td></tr>
<tr class="a">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/surefire/maven-surefire-plugin/">maven-surefire-plugin</a></td>
<td>3.0.0-M4</td></tr>
<tr class="b">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/surefire/maven-surefire-report-plugin/">maven-surefire-report-plugin</a></td>
<td>2.22.0</td></tr>
<tr class="a">
<td>org.apache.maven.plugins</td>
<td><a class="externalLink" href="https://maven.apache.org/plugins/maven-war-plugin/">maven-war-plugin</a></td>
<td>3.2.3</td></tr>
<tr class="b">
<td>org.apache.rat</td>
<td><a class="externalLink" href="http://creadur.apache.org/rat/apache-rat-plugin/">apache-rat-plugin</a></td>
<td>0.12</td></tr>
<tr class="a">
<td>org.codehaus.mojo</td>
<td><a class="externalLink" href="http://www.mojohaus.org/clirr-maven-plugin/clirr-maven-plugin">clirr-maven-plugin</a></td>
<td>2.8</td></tr>
<tr class="b">
<td>org.owasp</td>
<td><a class="externalLink" href="https://github.com/jeremylong/DependencyCheck.git/dependency-check-maven">dependency-check-maven</a></td>
<td>5.3.2</td></tr></table></section>
        </main>
      </div>
    </div>
    <hr/>
    <footer>
      <div class="container-fluid">
        <div class="row-fluid">
<div class="row span12">
            Apache Struts, Struts, Apache, the Apache feather logo, and the Apache Struts project
            logos are trademarks of The Apache Software Foundation.
            </div>
        </div>
      </div>
    </footer>
  </body>
</html>
