 


  <!doctype html>
<!--
 Generated by Apache Maven Doxia  at 02/13/23  Rendered using Reflow Maven Skin 2.3.1 (http://devacfr.github.io/reflow-maven-skin)
-->
<html  xml:lang="en" lang="en">
        <head>
    <meta charset="UTF-8" />
    <title>Apache OpenMeetings Project &#x2013; Project Dependencies</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-dependencies project-openmeetings-screenshare 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 active">
                <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="" title="Dependencies"  class="dropdown-item active">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>
                        </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: 2023-02-13</li>
        </ol>
    </nav>
        <a name="Project_Dependencies"></a>
<section>
 <div class="page-header">
  <h1 id="project-dependencies">Project Dependencies</h1>
 </div><a name="Project_Dependencies_compile"></a>
 <section>
  <h2 id="compile1">compile</h2>
  <p>The following is a list of compile dependencies for this project. These dependencies are required to compile and run the application:</p>
  <table border="0" class="bodyTable table table-striped table-hover">
   <thead>
    <tr class="a">
     <th>GroupId</th>
     <th>ArtifactId</th>
     <th>Version</th>
     <th>Type</th>
     <th>Licenses</th>
    </tr>
   </thead>
   <tbody>
    <tr class="b">
     <td align="left">ch.qos.logback</td>
     <td><a class="externalLink" href="http://logback.qos.ch/logback-classic">logback-classic</a></td>
     <td>1.4.5</td>
     <td>jar</td>
     <td><a class="externalLink" href="http://www.eclipse.org/legal/epl-v10.html">Eclipse Public License - v 1.0</a><a class="externalLink" href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html">GNU Lesser General Public License</a></td>
    </tr>
    <tr class="a">
     <td align="left">org.springframework</td>
     <td><a class="externalLink" href="https://github.com/spring-projects/spring-framework">spring-core</a></td>
     <td>5.3.25</td>
     <td>jar</td>
     <td><a class="externalLink" href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a></td>
    </tr>
   </tbody>
  </table>
 </section><a name="Project_Dependencies_test"></a>
 <section>
  <h2 id="test1">test</h2>
  <p>The following is a list of test dependencies for this project. These dependencies are only required to compile and run unit tests for the application:</p>
  <table border="0" class="bodyTable table table-striped table-hover">
   <thead>
    <tr class="a">
     <th>GroupId</th>
     <th>ArtifactId</th>
     <th>Version</th>
     <th>Type</th>
     <th>Licenses</th>
    </tr>
   </thead>
   <tbody>
    <tr class="b">
     <td align="left">org.junit.jupiter</td>
     <td><a class="externalLink" href="https://junit.org/junit5/">junit-jupiter-engine</a></td>
     <td>5.9.2</td>
     <td>jar</td>
     <td><a class="externalLink" href="https://www.eclipse.org/legal/epl-v20.html">Eclipse Public License v2.0</a></td>
    </tr>
    <tr class="a">
     <td align="left">org.mockito</td>
     <td><a class="externalLink" href="https://github.com/mockito/mockito">mockito-inline</a></td>
     <td>5.1.1</td>
     <td>jar</td>
     <td><a class="externalLink" href="https://github.com/mockito/mockito/blob/main/LICENSE">The MIT License</a></td>
    </tr>
    <tr class="b">
     <td align="left">org.mockito</td>
     <td><a class="externalLink" href="https://github.com/mockito/mockito">mockito-junit-jupiter</a></td>
     <td>5.1.1</td>
     <td>jar</td>
     <td><a class="externalLink" href="https://github.com/mockito/mockito/blob/main/LICENSE">The MIT License</a></td>
    </tr>
    <tr class="a">
     <td align="left">org.springframework</td>
     <td><a class="externalLink" href="https://github.com/spring-projects/spring-framework">spring-test</a></td>
     <td>5.3.25</td>
     <td>jar</td>
     <td><a class="externalLink" href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a></td>
    </tr>
   </tbody>
  </table>
 </section><a name="Project_Dependencies_provided"></a>
 <section>
  <h2 id="provided1">provided</h2>
  <p>The following is a list of provided dependencies for this project. These dependencies are required to compile the application, but should be provided by default when using the library:</p>
  <table border="0" class="bodyTable table table-striped table-hover">
   <thead>
    <tr class="a">
     <th>GroupId</th>
     <th>ArtifactId</th>
     <th>Version</th>
     <th>Type</th>
     <th>Licenses</th>
    </tr>
   </thead>
   <tbody>
    <tr class="b">
     <td align="left">javax.servlet</td>
     <td><a class="externalLink" href="http://servlet-spec.java.net">javax.servlet-api</a></td>
     <td>3.1.0</td>
     <td>jar</td>
     <td><a class="externalLink" href="https://glassfish.dev.java.net/nonav/public/CDDL+GPL.html">CDDL + GPLv2 with classpath exception</a></td>
    </tr>
   </tbody>
  </table>
 </section>
</section><a name="Project_Transitive_Dependencies"></a>
<section>
 <h1 id="project-transitive-dependencies">Project Transitive Dependencies</h1>
 <p>The following is a list of transitive dependencies for this project. Transitive dependencies are the dependencies of the project dependencies.</p><a name="Project_Transitive_Dependencies_compile"></a>
 <section>
  <h2 id="compile2">compile</h2>
  <p>The following is a list of compile dependencies for this project. These dependencies are required to compile and run the application:</p>
  <table border="0" class="bodyTable table table-striped table-hover">
   <thead>
    <tr class="a">
     <th>GroupId</th>
     <th>ArtifactId</th>
     <th>Version</th>
     <th>Type</th>
     <th>Licenses</th>
    </tr>
   </thead>
   <tbody>
    <tr class="b">
     <td align="left">ch.qos.logback</td>
     <td><a class="externalLink" href="http://logback.qos.ch/logback-core">logback-core</a></td>
     <td>1.4.5</td>
     <td>jar</td>
     <td><a class="externalLink" href="http://www.eclipse.org/legal/epl-v10.html">Eclipse Public License - v 1.0</a><a class="externalLink" href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html">GNU Lesser General Public License</a></td>
    </tr>
    <tr class="a">
     <td align="left">org.slf4j</td>
     <td><a class="externalLink" href="http://www.slf4j.org">slf4j-api</a></td>
     <td>2.0.6</td>
     <td>jar</td>
     <td><a class="externalLink" href="http://www.opensource.org/licenses/mit-license.php">MIT License</a></td>
    </tr>
    <tr class="b">
     <td align="left">org.springframework</td>
     <td><a class="externalLink" href="https://github.com/spring-projects/spring-framework">spring-jcl</a></td>
     <td>5.3.25</td>
     <td>jar</td>
     <td><a class="externalLink" href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a></td>
    </tr>
   </tbody>
  </table>
 </section><a name="Project_Transitive_Dependencies_test"></a>
 <section>
  <h2 id="test2">test</h2>
  <p>The following is a list of test dependencies for this project. These dependencies are only required to compile and run unit tests for the application:</p>
  <table border="0" class="bodyTable table table-striped table-hover">
   <thead>
    <tr class="a">
     <th>GroupId</th>
     <th>ArtifactId</th>
     <th>Version</th>
     <th>Type</th>
     <th>Licenses</th>
    </tr>
   </thead>
   <tbody>
    <tr class="b">
     <td align="left">net.bytebuddy</td>
     <td><a class="externalLink" href="https://bytebuddy.net/byte-buddy">byte-buddy</a></td>
     <td>1.12.23</td>
     <td>jar</td>
     <td><a class="externalLink" href="https://www.apache.org/licenses/LICENSE-2.0.txt">Apache License, Version 2.0</a></td>
    </tr>
    <tr class="a">
     <td align="left">net.bytebuddy</td>
     <td><a class="externalLink" href="https://bytebuddy.net/byte-buddy-agent">byte-buddy-agent</a></td>
     <td>1.12.22</td>
     <td>jar</td>
     <td><a class="externalLink" href="https://www.apache.org/licenses/LICENSE-2.0.txt">Apache License, Version 2.0</a></td>
    </tr>
    <tr class="b">
     <td align="left">org.apiguardian</td>
     <td><a class="externalLink" href="https://github.com/apiguardian-team/apiguardian">apiguardian-api</a></td>
     <td>1.1.2</td>
     <td>jar</td>
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache License, Version 2.0</a></td>
    </tr>
    <tr class="a">
     <td align="left">org.junit.jupiter</td>
     <td><a class="externalLink" href="https://junit.org/junit5/">junit-jupiter-api</a></td>
     <td>5.9.2</td>
     <td>jar</td>
     <td><a class="externalLink" href="https://www.eclipse.org/legal/epl-v20.html">Eclipse Public License v2.0</a></td>
    </tr>
    <tr class="b">
     <td align="left">org.junit.platform</td>
     <td><a class="externalLink" href="https://junit.org/junit5/">junit-platform-commons</a></td>
     <td>1.9.2</td>
     <td>jar</td>
     <td><a class="externalLink" href="https://www.eclipse.org/legal/epl-v20.html">Eclipse Public License v2.0</a></td>
    </tr>
    <tr class="a">
     <td align="left">org.junit.platform</td>
     <td><a class="externalLink" href="https://junit.org/junit5/">junit-platform-engine</a></td>
     <td>1.9.2</td>
     <td>jar</td>
     <td><a class="externalLink" href="https://www.eclipse.org/legal/epl-v20.html">Eclipse Public License v2.0</a></td>
    </tr>
    <tr class="b">
     <td align="left">org.mockito</td>
     <td><a class="externalLink" href="https://github.com/mockito/mockito">mockito-core</a></td>
     <td>5.1.1</td>
     <td>jar</td>
     <td><a class="externalLink" href="https://github.com/mockito/mockito/blob/main/LICENSE">The MIT License</a></td>
    </tr>
    <tr class="a">
     <td align="left">org.objenesis</td>
     <td><a class="externalLink" href="http://objenesis.org/objenesis">objenesis</a></td>
     <td>3.3</td>
     <td>jar</td>
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache License, Version 2.0</a></td>
    </tr>
    <tr class="b">
     <td align="left">org.opentest4j</td>
     <td><a class="externalLink" href="https://github.com/ota4j-team/opentest4j">opentest4j</a></td>
     <td>1.2.0</td>
     <td>jar</td>
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache License, Version 2.0</a></td>
    </tr>
   </tbody>
  </table>
 </section>
</section><a name="Project_Dependency_Graph"></a>
<section>
 <h1 id="project-dependency-graph">Project Dependency Graph</h1>
 <script language="javascript" type="text/javascript">
      function toggleDependencyDetails( divId, imgId )
      {
        var div = document.getElementById( divId );
        var img = document.getElementById( imgId );
        if( div.style.display == '' )
        {
          div.style.display = 'none';
          img.src='./images/icon_info_sml.gif';
          img.alt='[Information]';
        }
        else
        {
          div.style.display = '';
          img.src='./images/close.gif';
          img.alt='[Close]';
        }
      }
</script> <a name="Dependency_Tree"></a>
 <section>
  <h2 id="dependency-tree">Dependency Tree</h2>
  <ul>
   <li>org.apache.openmeetings:openmeetings-screenshare:jar:7.0.0 <i class="fas fa-info"></i>
    <div id="_dep0" style="display:none">
     <table border="0" class="bodyTable table table-striped table-hover">
      <thead>
       <tr class="a">
        <th>Openmeetings Screen Sharing applet</th>
       </tr>
      </thead>
      <tbody>
       <tr class="b">
        <td><p><b>Description: </b>Module to build OpenMeetings web application to grab a screen and send it to a Server</p> <p><b>URL: </b><a class="externalLink" href="https://openmeetings.apache.org/openmeetings-screenshare">https://openmeetings.apache.org/openmeetings-screenshare</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="https://www.apache.org/licenses/LICENSE-2.0">The Apache Software License, Version 2.0</a></p></td>
       </tr>
      </tbody>
     </table>
    </div>
    <ul>
     <li>ch.qos.logback:logback-classic:jar:1.4.5 (compile) <i class="fas fa-info"></i>
      <div id="_dep2" style="display:none">
       <table border="0" class="bodyTable table table-striped table-hover">
        <thead>
         <tr class="a">
          <th>Logback Classic Module</th>
         </tr>
        </thead>
        <tbody>
         <tr class="b">
          <td><p><b>Description: </b>logback-classic module</p> <p><b>URL: </b><a class="externalLink" href="http://logback.qos.ch/logback-classic">http://logback.qos.ch/logback-classic</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="http://www.eclipse.org/legal/epl-v10.html">Eclipse Public License - v 1.0</a>, <a class="externalLink" href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html">GNU Lesser General Public License</a></p></td>
         </tr>
        </tbody>
       </table>
      </div>
      <ul>
       <li>ch.qos.logback:logback-core:jar:1.4.5 (compile) <i class="fas fa-info"></i>
        <div id="_dep4" style="display:none">
         <table border="0" class="bodyTable table table-striped table-hover">
          <thead>
           <tr class="a">
            <th>Logback Core Module</th>
           </tr>
          </thead>
          <tbody>
           <tr class="b">
            <td><p><b>Description: </b>logback-core module</p> <p><b>URL: </b><a class="externalLink" href="http://logback.qos.ch/logback-core">http://logback.qos.ch/logback-core</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="http://www.eclipse.org/legal/epl-v10.html">Eclipse Public License - v 1.0</a>, <a class="externalLink" href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html">GNU Lesser General Public License</a></p></td>
           </tr>
          </tbody>
         </table>
        </div></li>
       <li>org.slf4j:slf4j-api:jar:2.0.6 (compile) <i class="fas fa-info"></i>
        <div id="_dep6" style="display:none">
         <table border="0" class="bodyTable table table-striped table-hover">
          <thead>
           <tr class="a">
            <th>SLF4J API Module</th>
           </tr>
          </thead>
          <tbody>
           <tr class="b">
            <td><p><b>Description: </b>The slf4j API</p> <p><b>URL: </b><a class="externalLink" href="http://www.slf4j.org">http://www.slf4j.org</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="http://www.opensource.org/licenses/mit-license.php">MIT License</a></p></td>
           </tr>
          </tbody>
         </table>
        </div></li>
      </ul></li>
     <li>org.springframework:spring-core:jar:5.3.25 (compile) <i class="fas fa-info"></i>
      <div id="_dep8" style="display:none">
       <table border="0" class="bodyTable table table-striped table-hover">
        <thead>
         <tr class="a">
          <th>Spring Core</th>
         </tr>
        </thead>
        <tbody>
         <tr class="b">
          <td><p><b>Description: </b>Spring Core</p> <p><b>URL: </b><a class="externalLink" href="https://github.com/spring-projects/spring-framework">https://github.com/spring-projects/spring-framework</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a></p></td>
         </tr>
        </tbody>
       </table>
      </div>
      <ul>
       <li>org.springframework:spring-jcl:jar:5.3.25 (compile) <i class="fas fa-info"></i>
        <div id="_dep10" style="display:none">
         <table border="0" class="bodyTable table table-striped table-hover">
          <thead>
           <tr class="a">
            <th>Spring Commons Logging Bridge</th>
           </tr>
          </thead>
          <tbody>
           <tr class="b">
            <td><p><b>Description: </b>Spring Commons Logging Bridge</p> <p><b>URL: </b><a class="externalLink" href="https://github.com/spring-projects/spring-framework">https://github.com/spring-projects/spring-framework</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a></p></td>
           </tr>
          </tbody>
         </table>
        </div></li>
      </ul></li>
     <li>org.junit.jupiter:junit-jupiter-engine:jar:5.9.2 (test) <i class="fas fa-info"></i>
      <div id="_dep12" style="display:none">
       <table border="0" class="bodyTable table table-striped table-hover">
        <thead>
         <tr class="a">
          <th>JUnit Jupiter Engine</th>
         </tr>
        </thead>
        <tbody>
         <tr class="b">
          <td><p><b>Description: </b>Module "junit-jupiter-engine" of JUnit 5.</p> <p><b>URL: </b><a class="externalLink" href="https://junit.org/junit5/">https://junit.org/junit5/</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="https://www.eclipse.org/legal/epl-v20.html">Eclipse Public License v2.0</a></p></td>
         </tr>
        </tbody>
       </table>
      </div>
      <ul>
       <li>org.junit.platform:junit-platform-engine:jar:1.9.2 (test) <i class="fas fa-info"></i>
        <div id="_dep14" style="display:none">
         <table border="0" class="bodyTable table table-striped table-hover">
          <thead>
           <tr class="a">
            <th>JUnit Platform Engine API</th>
           </tr>
          </thead>
          <tbody>
           <tr class="b">
            <td><p><b>Description: </b>Module "junit-platform-engine" of JUnit 5.</p> <p><b>URL: </b><a class="externalLink" href="https://junit.org/junit5/">https://junit.org/junit5/</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="https://www.eclipse.org/legal/epl-v20.html">Eclipse Public License v2.0</a></p></td>
           </tr>
          </tbody>
         </table>
        </div>
        <ul>
         <li>org.opentest4j:opentest4j:jar:1.2.0 (test) <i class="fas fa-info"></i>
          <div id="_dep16" style="display:none">
           <table border="0" class="bodyTable table table-striped table-hover">
            <thead>
             <tr class="a">
              <th>org.opentest4j:opentest4j</th>
             </tr>
            </thead>
            <tbody>
             <tr class="b">
              <td><p><b>Description: </b>Open Test Alliance for the JVM</p> <p><b>URL: </b><a class="externalLink" href="https://github.com/ota4j-team/opentest4j">https://github.com/ota4j-team/opentest4j</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache License, Version 2.0</a></p></td>
             </tr>
            </tbody>
           </table>
          </div></li>
         <li>org.junit.platform:junit-platform-commons:jar:1.9.2 (test) <i class="fas fa-info"></i>
          <div id="_dep18" style="display:none">
           <table border="0" class="bodyTable table table-striped table-hover">
            <thead>
             <tr class="a">
              <th>JUnit Platform Commons</th>
             </tr>
            </thead>
            <tbody>
             <tr class="b">
              <td><p><b>Description: </b>Module "junit-platform-commons" of JUnit 5.</p> <p><b>URL: </b><a class="externalLink" href="https://junit.org/junit5/">https://junit.org/junit5/</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="https://www.eclipse.org/legal/epl-v20.html">Eclipse Public License v2.0</a></p></td>
             </tr>
            </tbody>
           </table>
          </div></li>
        </ul></li>
       <li>org.junit.jupiter:junit-jupiter-api:jar:5.9.2 (test) <i class="fas fa-info"></i>
        <div id="_dep20" style="display:none">
         <table border="0" class="bodyTable table table-striped table-hover">
          <thead>
           <tr class="a">
            <th>JUnit Jupiter API</th>
           </tr>
          </thead>
          <tbody>
           <tr class="b">
            <td><p><b>Description: </b>Module "junit-jupiter-api" of JUnit 5.</p> <p><b>URL: </b><a class="externalLink" href="https://junit.org/junit5/">https://junit.org/junit5/</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="https://www.eclipse.org/legal/epl-v20.html">Eclipse Public License v2.0</a></p></td>
           </tr>
          </tbody>
         </table>
        </div></li>
       <li>org.apiguardian:apiguardian-api:jar:1.1.2 (test) <i class="fas fa-info"></i>
        <div id="_dep22" style="display:none">
         <table border="0" class="bodyTable table table-striped table-hover">
          <thead>
           <tr class="a">
            <th>org.apiguardian:apiguardian-api</th>
           </tr>
          </thead>
          <tbody>
           <tr class="b">
            <td><p><b>Description: </b>@API Guardian</p> <p><b>URL: </b><a class="externalLink" href="https://github.com/apiguardian-team/apiguardian">https://github.com/apiguardian-team/apiguardian</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache License, Version 2.0</a></p></td>
           </tr>
          </tbody>
         </table>
        </div></li>
      </ul></li>
     <li>org.springframework:spring-test:jar:5.3.25 (test) <i class="fas fa-info"></i>
      <div id="_dep24" style="display:none">
       <table border="0" class="bodyTable table table-striped table-hover">
        <thead>
         <tr class="a">
          <th>Spring TestContext Framework</th>
         </tr>
        </thead>
        <tbody>
         <tr class="b">
          <td><p><b>Description: </b>Spring TestContext Framework</p> <p><b>URL: </b><a class="externalLink" href="https://github.com/spring-projects/spring-framework">https://github.com/spring-projects/spring-framework</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a></p></td>
         </tr>
        </tbody>
       </table>
      </div></li>
     <li>org.mockito:mockito-inline:jar:5.1.1 (test) <i class="fas fa-info"></i>
      <div id="_dep26" style="display:none">
       <table border="0" class="bodyTable table table-striped table-hover">
        <thead>
         <tr class="a">
          <th>mockito-inline</th>
         </tr>
        </thead>
        <tbody>
         <tr class="b">
          <td><p><b>Description: </b>Mockito preconfigured inline mock maker (intermediate and to be superseeded by automatic usage in a future version)</p> <p><b>URL: </b><a class="externalLink" href="https://github.com/mockito/mockito">https://github.com/mockito/mockito</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="https://github.com/mockito/mockito/blob/main/LICENSE">The MIT License</a></p></td>
         </tr>
        </tbody>
       </table>
      </div>
      <ul>
       <li>org.mockito:mockito-core:jar:5.1.1 (test) <i class="fas fa-info"></i>
        <div id="_dep28" style="display:none">
         <table border="0" class="bodyTable table table-striped table-hover">
          <thead>
           <tr class="a">
            <th>mockito-core</th>
           </tr>
          </thead>
          <tbody>
           <tr class="b">
            <td><p><b>Description: </b>Mockito mock objects library core API and implementation</p> <p><b>URL: </b><a class="externalLink" href="https://github.com/mockito/mockito">https://github.com/mockito/mockito</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="https://github.com/mockito/mockito/blob/main/LICENSE">The MIT License</a></p></td>
           </tr>
          </tbody>
         </table>
        </div>
        <ul>
         <li>net.bytebuddy:byte-buddy:jar:1.12.23 (test) <i class="fas fa-info"></i>
          <div id="_dep30" style="display:none">
           <table border="0" class="bodyTable table table-striped table-hover">
            <thead>
             <tr class="a">
              <th>Byte Buddy (without dependencies)</th>
             </tr>
            </thead>
            <tbody>
             <tr class="b">
              <td><p><b>Description: </b>Byte Buddy is a Java library for creating Java classes at run time. This artifact is a build of Byte Buddy with all ASM dependencies repackaged into its own name space.</p> <p><b>URL: </b><a class="externalLink" href="https://bytebuddy.net/byte-buddy">https://bytebuddy.net/byte-buddy</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="https://www.apache.org/licenses/LICENSE-2.0.txt">Apache License, Version 2.0</a></p></td>
             </tr>
            </tbody>
           </table>
          </div></li>
         <li>net.bytebuddy:byte-buddy-agent:jar:1.12.22 (test) <i class="fas fa-info"></i>
          <div id="_dep32" style="display:none">
           <table border="0" class="bodyTable table table-striped table-hover">
            <thead>
             <tr class="a">
              <th>Byte Buddy agent</th>
             </tr>
            </thead>
            <tbody>
             <tr class="b">
              <td><p><b>Description: </b>The Byte Buddy agent offers convenience for attaching an agent to the local or a remote VM.</p> <p><b>URL: </b><a class="externalLink" href="https://bytebuddy.net/byte-buddy-agent">https://bytebuddy.net/byte-buddy-agent</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="https://www.apache.org/licenses/LICENSE-2.0.txt">Apache License, Version 2.0</a></p></td>
             </tr>
            </tbody>
           </table>
          </div></li>
         <li>org.objenesis:objenesis:jar:3.3 (test) <i class="fas fa-info"></i>
          <div id="_dep34" style="display:none">
           <table border="0" class="bodyTable table table-striped table-hover">
            <thead>
             <tr class="a">
              <th>Objenesis</th>
             </tr>
            </thead>
            <tbody>
             <tr class="b">
              <td><p><b>Description: </b>A library for instantiating Java objects</p> <p><b>URL: </b><a class="externalLink" href="http://objenesis.org/objenesis">http://objenesis.org/objenesis</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache License, Version 2.0</a></p></td>
             </tr>
            </tbody>
           </table>
          </div></li>
        </ul></li>
      </ul></li>
     <li>org.mockito:mockito-junit-jupiter:jar:5.1.1 (test) <i class="fas fa-info"></i>
      <div id="_dep36" style="display:none">
       <table border="0" class="bodyTable table table-striped table-hover">
        <thead>
         <tr class="a">
          <th>mockito-junit-jupiter</th>
         </tr>
        </thead>
        <tbody>
         <tr class="b">
          <td><p><b>Description: </b>Mockito JUnit 5 support</p> <p><b>URL: </b><a class="externalLink" href="https://github.com/mockito/mockito">https://github.com/mockito/mockito</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="https://github.com/mockito/mockito/blob/main/LICENSE">The MIT License</a></p></td>
         </tr>
        </tbody>
       </table>
      </div></li>
     <li>javax.servlet:javax.servlet-api:jar:3.1.0 (provided) <i class="fas fa-info"></i>
      <div id="_dep38" style="display:none">
       <table border="0" class="bodyTable table table-striped table-hover">
        <thead>
         <tr class="a">
          <th>Java Servlet API</th>
         </tr>
        </thead>
        <tbody>
         <tr class="b">
          <td><p><b>Description: </b>Java.net - The Source for Java Technology Collaboration</p> <p><b>URL: </b><a class="externalLink" href="http://servlet-spec.java.net">http://servlet-spec.java.net</a></p> <p><b>Project Licenses: </b><a class="externalLink" href="https://glassfish.dev.java.net/nonav/public/CDDL+GPL.html">CDDL + GPLv2 with classpath exception</a></p></td>
         </tr>
        </tbody>
       </table>
      </div></li>
    </ul></li>
  </ul>
 </section>
</section><a name="Licenses"></a>
<section>
 <h1 id="licenses1">Licenses</h1>
 <p><b>The Apache License, Version 2.0: </b>org.apiguardian:apiguardian-api, org.opentest4j:opentest4j</p>
 <p><b>MIT License: </b>SLF4J API Module</p>
 <p><b>The MIT License: </b>mockito-core, mockito-inline, mockito-junit-jupiter</p>
 <p><b>Apache License, Version 2.0: </b>Byte Buddy (without dependencies), Byte Buddy agent, Objenesis, Spring Commons Logging Bridge, Spring Core, Spring TestContext Framework</p>
 <p><b>Eclipse Public License v2.0: </b>JUnit Jupiter API, JUnit Jupiter Engine, JUnit Platform Commons, JUnit Platform Engine API</p>
 <p><b>CDDL + GPLv2 with classpath exception: </b>Java Servlet API</p>
 <p><b>GNU Lesser General Public License: </b>Logback Classic Module, Logback Core Module</p>
 <p><b>The Apache Software License, Version 2.0: </b>Openmeetings Screen Sharing applet</p>
 <p><b>Eclipse Public License - v 1.0: </b>Logback Classic Module, Logback Core Module</p>
</section><a name="Dependency_File_Details"></a>
<section>
 <h1 id="dependency-file-details">Dependency File Details</h1>
 <table border="0" class="bodyTable table table-striped table-hover">
  <tbody>
   <tr class="a">
    <th>Filename</th>
    <th>Size</th>
    <th>Entries</th>
    <th>Classes</th>
    <th>Packages</th>
    <th>Java Version</th>
    <th title="Indicates whether these dependencies have been compiled with debug information.">Debug Information</th>
   </tr>
   <tr class="b">
    <td align="left">logback-classic-1.4.5.jar</td>
    <td align="right">266.1 kB</td>
    <td align="right">225</td>
    <td align="right">173</td>
    <td align="right">27</td>
    <td align="center">-</td>
    <td align="center">Yes</td>
   </tr>
   <tr class="a">
    <td align="left">logback-core-1.4.5.jar</td>
    <td align="right">577.5 kB</td>
    <td align="right">498</td>
    <td align="right">446</td>
    <td align="right">42</td>
    <td align="center">-</td>
    <td align="center">Yes</td>
   </tr>
   <tr class="b">
    <td align="left">javax.servlet-api-3.1.0.jar</td>
    <td align="right">95.8 kB</td>
    <td align="right">103</td>
    <td align="right">79</td>
    <td align="right">4</td>
    <td align="center">1.7</td>
    <td align="center">Yes</td>
   </tr>
   <tr class="a">
    <td align="left">byte-buddy-1.12.23.jar</td>
    <td align="right">3.9 MB</td>
    <td align="right">2763</td>
    <td align="right">2709</td>
    <td align="right">39</td>
    <td align="center">-</td>
    <td align="center">Yes</td>
   </tr>
   <tr class="b">
    <td align="left">byte-buddy-agent-1.12.22.jar</td>
    <td align="right">256.7 kB</td>
    <td align="right">90</td>
    <td align="right">70</td>
    <td align="right">3</td>
    <td align="center">-</td>
    <td align="center">Yes</td>
   </tr>
   <tr class="a">
    <td align="left">apiguardian-api-1.1.2.jar</td>
    <td align="right">6.8 kB</td>
    <td align="right">9</td>
    <td align="right">3</td>
    <td align="right">2</td>
    <td align="center">-</td>
    <td align="center">Yes</td>
   </tr>
   <tr class="b">
    <td align="left">junit-jupiter-api-5.9.2.jar</td>
    <td align="right">207.8 kB</td>
    <td align="right">194</td>
    <td align="right">179</td>
    <td align="right">8</td>
    <td align="center">-</td>
    <td align="center">Yes</td>
   </tr>
   <tr class="a">
    <td align="left">junit-jupiter-engine-5.9.2.jar</td>
    <td align="right">246.6 kB</td>
    <td align="right">151</td>
    <td align="right">134</td>
    <td align="right">9</td>
    <td align="center">-</td>
    <td align="center">Yes</td>
   </tr>
   <tr class="b">
    <td align="left">junit-platform-commons-1.9.2.jar</td>
    <td align="right">103 kB</td>
    <td align="right">64</td>
    <td align="right">44</td>
    <td align="right">7</td>
    <td align="center">-</td>
    <td align="center">Yes</td>
   </tr>
   <tr class="a">
    <td align="left">junit-platform-engine-1.9.2.jar</td>
    <td align="right">189.2 kB</td>
    <td align="right">143</td>
    <td align="right">127</td>
    <td align="right">9</td>
    <td align="center">-</td>
    <td align="center">Yes</td>
   </tr>
   <tr class="b">
    <td align="left">mockito-core-5.1.1.jar</td>
    <td align="right">685.4 kB</td>
    <td align="right">637</td>
    <td align="right">565</td>
    <td align="right">64</td>
    <td align="center">-</td>
    <td align="center">Yes</td>
   </tr>
   <tr class="a">
    <td align="left">mockito-inline-5.1.1.jar</td>
    <td align="right">1.5 kB</td>
    <td align="right">6</td>
    <td align="right">0</td>
    <td align="right">0</td>
    <td align="center">-</td>
    <td align="center">No</td>
   </tr>
   <tr class="b">
    <td align="left">mockito-junit-jupiter-5.1.1.jar</td>
    <td align="right">5.5 kB</td>
    <td align="right">9</td>
    <td align="right">2</td>
    <td align="right">1</td>
    <td align="center">-</td>
    <td align="center">Yes</td>
   </tr>
   <tr class="a">
    <td align="left">objenesis-3.3.jar</td>
    <td align="right">49.4 kB</td>
    <td align="right">59</td>
    <td align="right">43</td>
    <td align="right">10</td>
    <td align="center">1.8</td>
    <td align="center">Yes</td>
   </tr>
   <tr class="b">
    <td align="left">opentest4j-1.2.0.jar</td>
    <td align="right">7.7 kB</td>
    <td align="right">11</td>
    <td align="right">7</td>
    <td align="right">2</td>
    <td align="center">-</td>
    <td align="center">Yes</td>
   </tr>
   <tr class="a">
    <td align="left">slf4j-api-2.0.6.jar</td>
    <td align="right">62.5 kB</td>
    <td align="right">66</td>
    <td align="right">52</td>
    <td align="right">5</td>
    <td align="center">-</td>
    <td align="center">Yes</td>
   </tr>
   <tr class="b">
    <td align="left">spring-core-5.3.25.jar</td>
    <td align="right">1.5 MB</td>
    <td align="right">1037</td>
    <td align="right">978</td>
    <td align="right">49</td>
    <td align="center">1.8</td>
    <td align="center">Yes</td>
   </tr>
   <tr class="a">
    <td align="left">spring-jcl-5.3.25.jar</td>
    <td align="right">24.4 kB</td>
    <td align="right">28</td>
    <td align="right">17</td>
    <td align="right">2</td>
    <td align="center">1.8</td>
    <td align="center">Yes</td>
   </tr>
   <tr class="b">
    <td align="left">spring-test-5.3.25.jar</td>
    <td align="right">789.4 kB</td>
    <td align="right">560</td>
    <td align="right">505</td>
    <td align="right">40</td>
    <td align="center">1.8</td>
    <td align="center">Yes</td>
   </tr>
   <tr class="a">
    <th>Total</th>
    <th>Size</th>
    <th>Entries</th>
    <th>Classes</th>
    <th>Packages</th>
    <th>Java Version</th>
    <th>Debug Information</th>
   </tr>
   <tr class="b">
    <td align="right">19</td>
    <td align="right">9 MB</td>
    <td align="right">6653</td>
    <td align="right">6133</td>
    <td align="right">323</td>
    <td align="center">1.8</td>
    <td align="right">18</td>
   </tr>
   <tr class="a">
    <td align="right">compile: 5</td>
    <td align="right">compile: 2.4 MB</td>
    <td align="right">compile: 1854</td>
    <td align="right">compile: 1666</td>
    <td align="right">compile: 125</td>
    <td align="center">-</td>
    <td align="right">compile: 5</td>
   </tr>
   <tr class="b">
    <td align="right">test: 13</td>
    <td align="right">test: 6.5 MB</td>
    <td align="right">test: 4696</td>
    <td align="right">test: 4388</td>
    <td align="right">test: 194</td>
    <td align="center">-</td>
    <td align="right">test: 12</td>
   </tr>
   <tr class="a">
    <td align="right">provided: 1</td>
    <td align="right">provided: 95.8 kB</td>
    <td align="right">provided: 103</td>
    <td align="right">provided: 79</td>
    <td align="right">provided: 4</td>
    <td align="center">-</td>
    <td align="right">provided: 1</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="h1">
        <a class="nav-link" href="#project-dependencies" title="Project Dependencies">Project Dependencies</a>
    </li>
    <li class="h2">
        <a class="nav-link" href="#compile1" title="compile">compile</a>
    </li>
    <li class="h2">
        <a class="nav-link" href="#test1" title="test">test</a>
    </li>
    <li class="h2">
        <a class="nav-link" href="#provided1" title="provided">provided</a>
    </li>
        <li class="h1">
        <a class="nav-link" href="#project-transitive-dependencies" title="Project Transitive Dependencies">Project Transitive Dependencies</a>
    </li>
    <li class="h2">
        <a class="nav-link" href="#compile2" title="compile">compile</a>
    </li>
    <li class="h2">
        <a class="nav-link" href="#test2" title="test">test</a>
    </li>
        <li class="h1">
        <a class="nav-link" href="#project-dependency-graph" title="Project Dependency Graph">Project Dependency Graph</a>
    </li>
    <li class="h2">
        <a class="nav-link" href="#dependency-tree" title="Dependency Tree">Dependency Tree</a>
    </li>
        <li class="h1">
        <a class="nav-link" href="#licenses1" title="Licenses">Licenses</a>
    </li>
        <li class="h1">
        <a class="nav-link" href="#dependency-file-details" title="Dependency File Details">Dependency File Details</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 active"><a  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>
                </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-2023
                 <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="https://www.apachecon.com/event-images/snippet.js"></script>        
<script src="../js/site.js" type="text/javascript"></script>        
<div class="text-center">Apache OpenMeetings, OpenMeetings, Apache, the Apache feather, and the Apache OpenMeetings project logo</div>        
<div class="text-center">are trademarks of the Apache Software Foundation.</div>        
<div class="text-center">
  <a href="https://privacy.apache.org/policies/privacy-policy-public.html">Privacy policy</a>
</div>  <script src="../js/reflow-skin.js" crossorigin="anonymous"></script>
    <script src="../js/anchor.min.js" crossorigin="anonymous"></script>
    </body>
</html>
