 


  <!doctype html>
<!--
 Generated by Apache Maven Doxia  at 2021-10-26  Rendered using Reflow Maven Skin 2.3.0 (http://devacfr.github.io/reflow-maven-skin)
-->
<html  xml:lang="en" lang="en">
        <head>
    <meta charset="UTF-8" />
    <title>Apache OpenMeetings Project &#x2013; Project Plugin Management</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta name="description" content="" />
      <meta http-equiv="content-language" content="en" />
                                                        <link href="../css/themes/cerulean/bootstrap.min.css" rel="stylesheet" />
    <link href="../css/fontawesome/all.min.css" rel="stylesheet" />
    <link href="../css/reflow-skin.css" rel="stylesheet" />
    
    <link rel="stylesheet" href="../js/styles/github.min.css" />

    <link href="../css/lightbox.css" rel="stylesheet" />
    <link href="../css/site.css" rel="stylesheet" />
    <link href="../css/print.css" rel="stylesheet" media="print" />
<link rel="stylesheet" href="../css/site.css"/>
        </head> <!-- end : head -->
<body class="page-plugin-management project-openmeetings-db anchorjs-enabled scrolltop-smooth-enabled m-toc-sidebar-enabled m-toc-sidebar-expanded m-toc-sidebar-autoexpandable toc-sidebar-fixed">
    <nav id="m-top-navbar" class="navbar navbar-expand-lg fixed-top navbar-dark bg-primary">
<div class="container">            <a class="navbar-brand mb-0 h1" href="../index.html">
            <span class="color-highlight">Apache</span> OpenMeetings
            </a>
            <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#top-navbar-collapse-1" aria-controls="top-navbar-collapse-1" aria-expanded="false" aria-label="Toggle navigation">
                <span class="navbar-toggler-icon"></span>
            </button>
            <div class="collapse navbar-collapse" id="top-navbar-collapse-1">
                <ul class="nav navbar-nav ml-auto">
                    <li class="nav-item " ><a  href="../demo.html"  title="Demo"  class="nav-link" >Demo</a></li>
                    <li class="nav-item " ><a  href="../downloads.html"  title="Download"  class="nav-link" >Download</a></li>
                    <li class="nav-item " ><a  href="https://cwiki.apache.org/confluence/display/OPENMEETINGS"  title="Wiki"   class="externalLink nav-link" >Wiki</a></li>
                    <li class="nav-item dropdown">
                <a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Parent Project <b class="caret"></b></a>
                        <div class="dropdown-menu">
                            <a href="../index.html" title="Openmeetings"  class="dropdown-item ">Openmeetings</a>
                        </div>
                    </li>
                    <li class="nav-item dropdown">
                <a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Project <b class="caret"></b></a>
                        <div class="dropdown-menu">
                            <a href="index.html" title="About"  class="dropdown-item ">About</a>
                            <a href="project-info.html" title="Info"  class="dropdown-item ">Info</a>
                            <a href="summary.html" title="Summary"  class="dropdown-item ">Summary</a>
                            <a href="https://www.apache.org/licenses/" title="License"  class="dropdown-item ">License</a>
                            <a href="dependencies.html" title="Dependencies"  class="dropdown-item ">Dependencies</a>
                            <a href="dependency-convergence.html" title="Dependency Convergence"  class="dropdown-item ">Dependency Convergence</a>
                            <a href="rat-report.html" title="RAT Report"  class="dropdown-item ">RAT Report</a>
                            <a href="apidocs/index.html" title="JavaDoc" target="_blank" class="dropdown-item ">JavaDoc</a>
                        </div>
                    </li>
                </ul><!--/ul.navbar-nav -->
            </div><!--/.nav-collapse -->
</div> <!--/.container -->    </nav> <!--/.navbar -->
    <div class="main-body">
    <div class="header text-light bg-secondary" role="main">
        <div class="container container-fluid">
    <div id="banner" class="header--banner">
        <div class="row m-1">
          <div class="col-md-12">
            <div class="float-left header--banner--left bannerLeft">
                    <a href="../index.html">
            <img class="float-left m-2 img-fluid" src="../images/logo.png" alt="Apache OpenMeetings" />
            </a>
            </div>
            <div class="float-right header--banner--right bannerRight">
                    <a href="https://apache.org">
            <img class="float-left m-2 img-fluid" src="https://apache.org/img/asf_logo.png" alt="Apache" />
            </a>
            </div>
          </div>
        </div>
    </div>
        </div>
    </div> <!-- end : header -->
    <div class="row mt-5">
        <div class="d-xs-none d-sm-none d-md-none d-lg-block col-lg-2">
        </div>
        <main class="col-xs-12 col-sm-12 col-md-12 col-lg-12 col-xl-8" role="main">
    <nav aria-label="breadcrumb">
        <ol class="breadcrumb">
            <li class="publishDate version-date">    Last Published: 2021-10-26</li>
        </ol>
    </nav>
                    <section> 
 <div class="page-header">
  <h2 id="project-plugin-management">Project Plugin Management</h2>
 </div> 
 <a name="Project_Plugin_Management"></a> 
 <table border="0" class="bodyTable table table-striped table-hover"> 
  <thead> 
   <tr class="a"> 
    <th>GroupId</th> 
    <th>ArtifactId</th> 
    <th>Version</th> 
   </tr> 
  </thead> 
  <tbody> 
   <tr class="b"> 
    <td>com.github.eirslett</td> 
    <td><a class="externalLink" href="https://github.com/eirslett/frontend-maven-plugin/frontend-maven-plugin">frontend-maven-plugin</a></td> 
    <td>1.11.0</td> 
   </tr> 
   <tr class="a"> 
    <td>com.google.code.maven-replacer-plugin</td> 
    <td><a class="externalLink" href="http://code.google.com/p/maven-replacer-plugin">replacer</a></td> 
    <td>1.5.3</td> 
   </tr> 
   <tr class="b"> 
    <td>com.samaxes.maven</td> 
    <td><a class="externalLink" href="https://github.com/samaxes/minify-maven-plugin">minify-maven-plugin</a></td> 
    <td>1.7.6</td> 
   </tr> 
   <tr class="a"> 
    <td>de.thetaphi</td> 
    <td><a class="externalLink" href="https://github.com/policeman-tools/forbidden-apis">forbiddenapis</a></td> 
    <td>3.1</td> 
   </tr> 
   <tr class="b"> 
    <td>io.openapitools.swagger</td> 
    <td><a class="externalLink" href="https://github.com/openapi-tools/swagger-maven-plugin">swagger-maven-plugin</a></td> 
    <td>2.1.6</td> 
   </tr> 
   <tr class="a"> 
    <td>net.nicoulaj.maven.plugins</td> 
    <td><a class="externalLink" href="https://checksum-maven-plugin.nicoulaj.net">checksum-maven-plugin</a></td> 
    <td>1.11</td> 
   </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>5.1.1</td> 
   </tr> 
   <tr class="a"> 
    <td>org.apache.maven.plugins</td> 
    <td><a class="externalLink" href="https://maven.apache.org/plugins/maven-antrun-plugin/">maven-antrun-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-assembly-plugin/">maven-assembly-plugin</a></td> 
    <td>3.3.0</td> 
   </tr> 
   <tr class="a"> 
    <td>org.apache.maven.plugins</td> 
    <td><a class="externalLink" href="https://maven.apache.org/plugins/maven-checkstyle-plugin/">maven-checkstyle-plugin</a></td> 
    <td>3.1.1</td> 
   </tr> 
   <tr class="b"> 
    <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="a"> 
    <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="b"> 
    <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.2.0</td> 
   </tr> 
   <tr class="a"> 
    <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="b"> 
    <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="a"> 
    <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.2.0</td> 
   </tr> 
   <tr class="b"> 
    <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="a"> 
    <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.2</td> 
   </tr> 
   <tr class="b"> 
    <td>org.apache.maven.plugins</td> 
    <td><a class="externalLink" href="https://maven.apache.org/plugins/maven-gpg-plugin/">maven-gpg-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/plugins/maven-help-plugin/">maven-help-plugin</a></td> 
    <td>3.2.0</td> 
   </tr> 
   <tr class="b"> 
    <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="a"> 
    <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.2</td> 
   </tr> 
   <tr class="b"> 
    <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="a"> 
    <td>org.apache.maven.plugins</td> 
    <td><a class="externalLink" href="https://maven.apache.org/plugins/maven-jarsigner-plugin/">maven-jarsigner-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-javadoc-plugin/">maven-javadoc-plugin</a></td> 
    <td>3.3.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.6.1</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.1.2</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-M4</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.7.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.2.0</td> 
   </tr> 
   <tr class="b"> 
    <td>org.apache.maven.plugins</td> 
    <td><a class="externalLink" href="https://maven.apache.org/scm/maven-scm-plugin/">maven-scm-plugin</a></td> 
    <td>1.11.2</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.1.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.2.4</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.9.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-M5</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>3.0.0-M5</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.3.2</td> 
   </tr> 
   <tr class="b"> 
    <td>org.apache.openjpa</td> 
    <td><a class="externalLink" href="http://openjpa.apache.org/openjpa-tools/openjpa-maven-plugin">openjpa-maven-plugin</a></td> 
    <td>3.1.2</td> 
   </tr> 
   <tr class="a"> 
    <td>org.apache.rat</td> 
    <td><a class="externalLink" href="https://creadur.apache.org/rat/apache-rat-plugin/">apache-rat-plugin</a></td> 
    <td>0.13</td> 
   </tr> 
   <tr class="b"> 
    <td>org.codehaus.mojo</td> 
    <td><a class="externalLink" href="http://www.mojohaus.org/buildnumber-maven-plugin/buildnumber-maven-plugin">buildnumber-maven-plugin</a></td> 
    <td>1.4</td> 
   </tr> 
   <tr class="a"> 
    <td>org.codehaus.mojo</td> 
    <td><a class="externalLink" href="http://www.mojohaus.org/exec-maven-plugin">exec-maven-plugin</a></td> 
    <td>3.0.0</td> 
   </tr> 
   <tr class="b"> 
    <td>org.codehaus.mojo</td> 
    <td><a class="externalLink" href="http://mojo.codehaus.org/keytool/keytool-maven-plugin">keytool-maven-plugin</a></td> 
    <td>1.5</td> 
   </tr> 
   <tr class="a"> 
    <td>org.codehaus.mojo</td> 
    <td><a class="externalLink" href="http://www.mojohaus.org/license-maven-plugin">license-maven-plugin</a></td> 
    <td>2.0.0</td> 
   </tr> 
   <tr class="b"> 
    <td>org.codehaus.mojo</td> 
    <td><a class="externalLink" href="http://www.mojohaus.org/wagon-maven-plugin/">wagon-maven-plugin</a></td> 
    <td>2.0.2</td> 
   </tr> 
   <tr class="a"> 
    <td>org.codehaus.mojo</td> 
    <td><a class="externalLink" href="http://www.mojohaus.org/xml-maven-plugin/">xml-maven-plugin</a></td> 
    <td>1.0.2</td> 
   </tr> 
   <tr class="b"> 
    <td>org.eclipse.jetty</td> 
    <td><a class="externalLink" href="https://eclipse.org/jetty/jetty-maven-plugin">jetty-maven-plugin</a></td> 
    <td>9.4.43.v20210629</td> 
   </tr> 
   <tr class="a"> 
    <td>org.jacoco</td> 
    <td><a class="externalLink" href="https://www.jacoco.org/jacoco/trunk/doc/maven.html">jacoco-maven-plugin</a></td> 
    <td>0.8.7</td> 
   </tr> 
   <tr class="b"> 
    <td>org.sonarsource.scanner.maven</td> 
    <td><a class="externalLink" href="http://sonarsource.github.io/sonar-scanner-maven/">sonar-maven-plugin</a></td> 
    <td>3.8.0.2131</td> 
   </tr> 
  </tbody> 
 </table> 
</section>        </main>
        <div class="d-none d-sm-none d-md-none d-lg-none d-xl-block col-xl-2">
            <div id="m-toc-sidebar" class="d-print-none m-toc-sidebar-enabled m-toc-sidebar-expanded m-toc-sidebar-autoexpandable toc-sidebar-fixed">
                <nav id="m-toc-sidebar-nav flex-column">
                <ul class="m-nav--sidebar nav flex-column flex-nowrap">
    <li class="h2">
        <a class="nav-link" href="#project-plugin-management" title="Project Plugin Management">Project Plugin Management</a>
    </li>
                    </ul>
                </nav>
           </div>
        </div>
    </div> <!-- row: end -->
</div> <!-- .main-body: end -->
    <div id="m_scrolltop" class="m-scrolltop">
		<i class="fa fa-arrow-up"></i>
    </div>
  <!-- Footer -->
<footer class="footer-light bg-light">
    <div class="container">
        <div class="row">
                        <div class="col bottom-nav">
                <ul class="nav flex-column nav-list">
                    <li class="nav-header">
Parent Project
                    </li>
                    <li class="nav-item "><a  href="../index.html"  title="Openmeetings"  class="nav-link" >Openmeetings</a></li>
                </ul>
            </div>
            <div class="col bottom-nav">
                <ul class="nav flex-column nav-list">
                    <li class="nav-header">
Project
                    </li>
                    <li class="nav-item "><a  href="index.html"  title="About"  class="nav-link" >About</a></li>
                    <li class="nav-item "><a  href="project-info.html"  title="Info"  class="nav-link" >Info</a></li>
                    <li class="nav-item "><a  href="summary.html"  title="Summary"  class="nav-link" >Summary</a></li>
                    <li class="nav-item "><a  href="https://www.apache.org/licenses/"  title="License"   class="externalLink nav-link" >License</a></li>
                    <li class="nav-item "><a  href="dependencies.html"  title="Dependencies"  class="nav-link" >Dependencies</a></li>
                    <li class="nav-item "><a  href="dependency-convergence.html"  title="Dependency Convergence"  class="nav-link" >Dependency Convergence</a></li>
                    <li class="nav-item "><a  href="rat-report.html"  title="RAT Report"  class="nav-link" >RAT Report</a></li>
                    <li class="nav-item "><a  href="apidocs/index.html"  title="JavaDoc"  target="_blank"  class="nav-link" >JavaDoc</a></li>
                </ul>
            </div>
        </div> <!-- END: .row -->
    </div> <!-- END: .container -->
</footer>
  <div class="container subfooter text-center">
    <div class="row">
      <div class="col-md-12">
        <p class="copyright">Copyright &copy;2012-2021
                 <a href="https://apache.org">Apache Software Foundation</a>
. All Rights Reserved.</p>
      </div>
    </div>
  </div>

  <!-- Le javascript
  ================================================== -->
  <!-- Placed at the end of the document so the pages load faster -->
    <script src="../js/jquery.min.js" crossorigin="anonymous"></script>
    <script src="../js/popper.min.js" crossorigin="anonymous"></script>
    <script src="../js/bootstrap.min.js" crossorigin="anonymous"></script>

  <script src="../js/lightbox.min.js" crossorigin="anonymous"></script>
            	<script src="../js/highlight.min.js" crossorigin="anonymous"></script>
                    
<script src="../js/site.js" type="text/javascript"></script>        
<p class="text-center">Apache OpenMeetings, OpenMeetings, Apache, the Apache feather, and the Apache OpenMeetings project logo</p>        
<p class="text-center">are trademarks of the Apache Software Foundation.</p>  <script src="../js/reflow-skin.js" crossorigin="anonymous"></script>
    <script src="../js/anchor.min.js" crossorigin="anonymous"></script>
    </body>
</html>
