
<!DOCTYPE html>
<!--
 Generated by Apache Maven Doxia at 2017-03-17
 Rendered using Reflow Maven Skin 1.1.1 (http://andriusvelykis.github.io/reflow-maven-skin)
-->
<html  xml:lang="en" lang="en">

	<head>
		<meta charset="UTF-8" />
		<title>Apache OpenMeetings Project - Project Dependency 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/bootstrap.min.css" rel="stylesheet" />
		<link href="../css/bootstrap-responsive.min.css" rel="stylesheet" />
		<link href="../css/docs.css" rel="stylesheet" />
		<link href="../css/reflow-skin.css" rel="stylesheet" />


		<link href="../css/lightbox.css" rel="stylesheet" />

		<link href="../css/site.css" rel="stylesheet" />
		<link href="../css/print.css" rel="stylesheet" media="print" />

		<!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
		<!--[if lt IE 9]>
			<script src="../js/html5.js"></script>
		<![endif]-->


		
	</head>

	<body class="page-dependency-management project-openmeetings-install" data-spy="scroll" data-offset="60" data-target="#toc-scroll-target">

		<div class="navbar navbar-fixed-top">
			<div class="navbar-inner">
				<div class="container">
					<a class="btn btn-navbar" data-toggle="collapse" data-target="#top-nav-collapse">
						<span class="icon-bar"></span>
						<span class="icon-bar"></span>
						<span class="icon-bar"></span>
					</a>
					<div class="brand"><span class="color-highlight">Apache</span> OpenMeetings</div>
					<div class="nav-collapse collapse" id="top-nav-collapse">
						<ul class="nav pull-right">
							<li ><a href="../demo.html" title="Demo">Demo</a></li>
							<li ><a href="../downloads.html" title="Download">Download</a></li>
							<li ><a href="https://cwiki.apache.org/confluence/display/OPENMEETINGS" title="Wiki" class="externalLink">Wiki</a></li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">Parent Project <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="../index.html" title="Openmeetings">Openmeetings</a></li>
								</ul>
							</li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">Project <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="index.html" title="About">About</a></li>
									<li ><a href="project-info.html" title="Info">Info</a></li>
									<li ><a href="project-summary.html" title="Summary">Summary</a></li>
									<li ><a href="license.html" title="License">License</a></li>
									<li ><a href="dependencies.html" title="Dependencies">Dependencies</a></li>
									<li ><a href="dependency-convergence.html" title="Dependency Convergence">Dependency Convergence</a></li>
									<li ><a href="rat-report.html" title="RAT Report">RAT Report</a></li>
								</ul>
							</li>
						</ul>
					</div><!--/.nav-collapse -->
				</div>
			</div>
		</div>

	<div class="container">

	<!-- Masthead
	================================================== -->

	<header>
	<div class="jumbotron subhead">
		<div class="row" id="banner">
			<div class="span12">
				<div class="pull-left">
					<a href="../index.html" id="bannerLeft"><img src="../images/logo.png" alt='"'Apache OpenMeetings'"' /></a>
				</div>
				<div class="pull-right">
					<a href="http://apache.org" id="bannerRight"><img src="http://apache.org/img/asf_logo.png" alt='"'Apache'"' /></a>
				</div>
			</div>
		</div>
	</div>
		<div>
			<ul class="breadcrumb">
				<li class="publishDate version-date">Last Published: 2017-03-17</li>
			</ul>
		</div>
	</header>

	<div class="main-body">
	<div class="row">
		<div class="span8">
			<div class="body-content">
<div class="section"> 
 <div class="page-header">
  <h2 id="Project_Dependency_Management">Project Dependency Management</h2>
 </div> 
 <a name="Project_Dependency_Management"></a> 
 <div class="section"> 
  <h3 id="compile">compile</h3> 
  <a name="compile"></a> 
  <p>The following is a list of compile dependencies in the DependencyManagement of this project. These dependencies can be included in the submodules to compile and run the submodule:</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>License</th> 
    </tr> 
   </thead> 
   <tbody> 
    <tr class="b"> 
     <td>org.apache.commons</td> 
     <td><a class="externalLink" href="http://commons.apache.org/proper/commons-lang/">commons-lang3</a></td> 
     <td>3.5</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>org.apache.cxf</td> 
     <td><a class="externalLink" href="http://cxf.apache.org">cxf-rt-frontend-jaxrs</a></td> 
     <td>3.1.9</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td> 
    </tr> 
    <tr class="b"> 
     <td>org.apache.cxf</td> 
     <td><a class="externalLink" href="http://cxf.apache.org">cxf-rt-frontend-jaxws</a></td> 
     <td>3.1.9</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td> 
    </tr> 
    <tr class="a"> 
     <td>org.apache.cxf</td> 
     <td><a class="externalLink" href="http://cxf.apache.org">cxf-rt-rs-extension-providers</a></td> 
     <td>3.1.9</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td> 
    </tr> 
    <tr class="b"> 
     <td>org.apache.cxf</td> 
     <td><a class="externalLink" href="http://cxf.apache.org">cxf-rt-rs-service-description</a></td> 
     <td>3.1.9</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td> 
    </tr> 
    <tr class="a"> 
     <td>org.apache.openmeetings</td> 
     <td><a class="externalLink" href="http://openmeetings.apache.org/openmeetings-core">openmeetings-core</a></td> 
     <td>3.2.1</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td> 
    </tr> 
    <tr class="b"> 
     <td>org.apache.openmeetings</td> 
     <td><a class="externalLink" href="http://openmeetings.apache.org/openmeetings-db">openmeetings-db</a></td> 
     <td>3.2.1</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td> 
    </tr> 
    <tr class="a"> 
     <td>org.apache.openmeetings</td> 
     <td><a class="externalLink" href="http://openmeetings.apache.org/openmeetings-flash">openmeetings-flash</a></td> 
     <td>3.2.1</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td> 
    </tr> 
    <tr class="b"> 
     <td>org.apache.openmeetings</td> 
     <td><a class="externalLink" href="http://openmeetings.apache.org/openmeetings-install">openmeetings-install</a></td> 
     <td>3.2.1</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td> 
    </tr> 
    <tr class="a"> 
     <td>org.apache.openmeetings</td> 
     <td><a class="externalLink" href="http://openmeetings.apache.org/openmeetings-screenshare">openmeetings-screenshare</a></td> 
     <td>3.2.1</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td> 
    </tr> 
    <tr class="b"> 
     <td>org.apache.openmeetings</td> 
     <td><a class="externalLink" href="http://openmeetings.apache.org/openmeetings-service">openmeetings-service</a></td> 
     <td>3.2.1</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td> 
    </tr> 
    <tr class="a"> 
     <td>org.apache.openmeetings</td> 
     <td><a class="externalLink" href="http://openmeetings.apache.org/openmeetings-util">openmeetings-util</a></td> 
     <td>3.2.1</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td> 
    </tr> 
    <tr class="b"> 
     <td>org.apache.openmeetings</td> 
     <td><a class="externalLink" href="http://openmeetings.apache.org/openmeetings-web">openmeetings-web</a></td> 
     <td>3.2.1</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td> 
    </tr> 
    <tr class="a"> 
     <td>org.apache.openmeetings</td> 
     <td><a class="externalLink" href="http://openmeetings.apache.org/openmeetings-webservice">openmeetings-webservice</a></td> 
     <td>3.2.1</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td> 
    </tr> 
    <tr class="b"> 
     <td>org.apache.wicket</td> 
     <td><a class="externalLink" href="http://wicket.apache.org/wicket-extensions">wicket-extensions</a></td> 
     <td>8.0.0-M4</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td> 
    </tr> 
    <tr class="a"> 
     <td>org.codehaus.jettison</td> 
     <td><a class="externalLink" href="https://github.com/jettison-json/jettison">jettison</a></td> 
     <td>1.3.8</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a></td> 
    </tr> 
    <tr class="b"> 
     <td>org.mnode.ical4j</td> 
     <td><a class="externalLink" href="http://ical4j.sourceforge.net">ical4j</a></td> 
     <td>2.0.0</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="https://raw.githubusercontent.com/ical4j/ical4j/master/LICENSE">iCal4j - License</a></td> 
    </tr> 
    <tr class="a"> 
     <td>org.red5</td> 
     <td><a class="externalLink" href="https://github.com/Red5/red5-client">red5-client</a></td> 
     <td>1.0.9-M2</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2</a></td> 
    </tr> 
    <tr class="b"> 
     <td>org.red5</td> 
     <td><a class="externalLink" href="https://github.com/Red5/red5-server">red5-server</a></td> 
     <td>1.0.9-M2</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2</a></td> 
    </tr> 
    <tr class="a"> 
     <td>org.simpleframework</td> 
     <td><a class="externalLink" href="http://simple.sourceforge.net">simple-xml</a></td> 
     <td>2.7.1</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td> 
    </tr> 
    <tr class="b"> 
     <td>org.springframework</td> 
     <td><a class="externalLink" href="https://github.com/spring-projects/spring-framework">spring-core</a></td> 
     <td>4.3.6.RELEASE</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td> 
    </tr> 
    <tr class="a"> 
     <td>org.springframework</td> 
     <td><a class="externalLink" href="https://github.com/spring-projects/spring-framework">spring-orm</a></td> 
     <td>4.3.6.RELEASE</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td> 
    </tr> 
   </tbody> 
  </table> 
 </div> 
 <div class="section"> 
  <h3 id="test">test</h3> 
  <a name="test"></a> 
  <p>The following is a list of test dependencies in the DependencyManagement of this project. These dependencies can be included in the submodules to compile and run unit tests for the submodule:</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>License</th> 
    </tr> 
   </thead> 
   <tbody> 
    <tr class="b"> 
     <td>org.seleniumhq.selenium</td> 
     <td><a class="externalLink" href="http://www.seleniumhq.org/">selenium-java</a></td> 
     <td>3.0.1</td> 
     <td>jar</td> 
     <td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">The Apache Software License, Version 2.0</a></td> 
    </tr> 
   </tbody> 
  </table> 
 </div> 
 <div class="section"> 
  <h3 id="provided">provided</h3> 
  <a name="provided"></a> 
  <p>The following is a list of provided dependencies in the DependencyManagement of this project. These dependencies can be included in the submodules to compile the submodule, 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>License</th> 
    </tr> 
   </thead> 
   <tbody> 
    <tr class="b"> 
     <td>org.apache.tomcat</td> 
     <td><a class="externalLink" href="http://tomcat.apache.org/">tomcat-servlet-api</a></td> 
     <td>8.5.11</td> 
     <td>jar</td> 
     <td>http://www.apache.org/licenses/LICENSE-2.0.txt and http://www.opensource.org/licenses/cddl1.txt</td> 
    </tr> 
   </tbody> 
  </table> 
 </div> 
</div>
			</div>
		</div>
		<div class="span4">
			<div id="toc-sidebar">
				<div class="well">
					<ul class="nav nav-list">
						<li class="nav-header">Table of Contents</li>
		<li class="dropdown"><a href="#Project_Dependency_Management" title="Project Dependency Management">Project Dependency Management <b class="caret"></b></a>
			<ul class="nav nav-list">
		<li><a href="#compile" title="compile">compile</a>
		<li><a href="#test" title="test">test</a>
		<li><a href="#provided" title="provided">provided</a>
				<li class="divider"></li>
			</ul>
		</li>
					</ul>
				</div>
			</div>
		</div>
	</div>
	</div>

	</div><!-- /container -->

	<!-- Footer
	================================================== -->
	<footer class="well">
		<div class="container">
			<div class="row">
				<div class="span4 bottom-nav">
					<ul class="nav nav-list">
						<li class="nav-header">Parent Project</li>
						<li >
							<a href="../index.html" title="Openmeetings">Openmeetings</a>
						</li>
					</ul>
				</div>
				<div class="span8 bottom-nav">
					<ul class="nav nav-list">
						<li class="nav-header">Project</li>
						<li >
							<a href="index.html" title="About">About</a>
						</li>
						<li >
							<a href="project-info.html" title="Info">Info</a>
						</li>
						<li >
							<a href="project-summary.html" title="Summary">Summary</a>
						</li>
						<li >
							<a href="license.html" title="License">License</a>
						</li>
						<li >
							<a href="dependencies.html" title="Dependencies">Dependencies</a>
						</li>
						<li >
							<a href="dependency-convergence.html" title="Dependency Convergence">Dependency Convergence</a>
						</li>
						<li >
							<a href="rat-report.html" title="RAT Report">RAT Report</a>
						</li>
					</ul>
				</div>
			</div>
		</div>
	</footer>

	<div class="container subfooter">
		<div class="row">
			<div class="span12">
				<p class="pull-right"><a href="#">Back to top</a></p>
				<p class="copyright">Copyright &copy;2012-2017 <a href="http://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"></script>

	<script src="../js/bootstrap.min.js"></script>
	<script src="../js/lightbox.min.js"></script>
	<script src="../js/reflow-scroll.js"></script>
	
<script src="../js/site.js"></script>
	<script src="../js/reflow-skin.js"></script>

	</body>
</html>
