<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!--
   Licensed to the Apache Software Foundation (ASF) under one or more
   contributor license agreements.  See the NOTICE file distributed with
   this work for additional information regarding copyright ownership.
   The ASF licenses this file to You under the Apache License, Version 2.0
   (the "License"); you may not use this file except in compliance with
   the License.  You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
-->
<!-- Generated by Apache Maven Doxia at 2017-08-20 -->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
		<title>Log4j Scala API &#x2013; Project Dependencies - Scala 2.12 wrapper for Log4j API</title>
		<link rel="stylesheet" href="./css/bootstrap.min.css" type="text/css" />
		<link rel="stylesheet" href="./css/site.css" type="text/css" />
		<script type="text/javascript" src="./js/jquery.min.js"></script>
		<script type="text/javascript" src="./js/bootstrap.min.js"></script>
		<script type="text/javascript" src="./js/prettify.min.js"></script>
		<script type="text/javascript" src="./js/site.js"></script>
		<meta name="Date-Revision-yyyymmdd" content="20170820" />
		<meta http-equiv="Content-Language" content="en" />
		
				</head>
	<body class="composite">
		<a href="https://logging.apache.org/">
			<img class="logo-left" src="./images/ls-logo.jpg" alt="Apache logging services logo" />
		</a>
		<img class="logo-right" src="./images/logo.png" alt="Apache log4j logo" />
		<div class="clear"></div>

		<div class="navbar">
			<div class="navbar-inner">
				<div class="container-fluid">
					<a class="brand" href="http://logging.apache.org/log4j/2.x/log4j-api-scala_2.12/">Scala 2.12 wrapper for Log4j API &trade;</a>
						<ul class="nav">
						<li>
					
				
				<a href="http://www.apache.org/" class="external" target="_blank" title="Apache">Apache</a>
			</li>
					<li>
									<a href="../../../" title="Logging Services">Logging Services</a>
			</li>
					<li>
									<a href="../index.html" title="Log4j">Log4j</a>
			</li>
		</ul>
				</div>
			</div>
		</div>

		<div class="container-fluid">
			<table class="layout-table">
				<tr>
					<td class="sidebar">
						<div class="well sidebar-nav">
										<ul class="nav nav-list">
		 														 <li class="nav-header">Component Documentation</li>
																																																																																																																																																									<li class="expanded">
									<a href="project-info.html" title="Component Information">Component Information</a>
										<ul>
																						<li class="none active">
									<a href="dependencies.html" title="Dependencies">Dependencies</a>
					</li>
 																						<li class="none">
									<a href="dependency-info.html" title="Dependency Information">Dependency Information</a>
					</li>
 																						<li class="none">
									<a href="dependency-management.html" title="Dependency Management">Dependency Management</a>
					</li>
 																						<li class="none">
									<a href="distribution-management.html" title="Distribution Management">Distribution Management</a>
					</li>
 																						<li class="none">
									<a href="index.html" title="About">About</a>
					</li>
 																	<!-- Removing overall project item Issue Management from component-specific menu -->
																	<!-- Removing overall project item Licenses from component-specific menu -->
																	<!-- Removing overall project item Mailing Lists from component-specific menu -->
																						<li class="none">
									<a href="plugin-management.html" title="Plugin Management">Plugin Management</a>
					</li>
 																						<li class="none">
									<a href="plugins.html" title="Plugins">Plugins</a>
					</li>
 																	<!-- Removing overall project item Source Code Management from component-specific menu -->
																						<li class="none">
									<a href="project-summary.html" title="Summary">Summary</a>
					</li>
 										</ul>
							</li>
 																																											<li class="collapsed">
									<a href="project-reports.html" title="Component Reports">Component Reports</a>
										</li>
 								</ul>
							</div>
						<div id="poweredBy">
															<a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
				<img class="poweredBy" alt="Built by Maven" src="./images/maven-feather.png" />
			</a>
									</div>
					</td>
					<td class="content">
						<a name="Project_Dependencies"></a>
<div class="section">
<h2><a name="Project_Dependencies"></a>Project Dependencies</h2><a name="Project_Dependencies_compile"></a>
<div class="section">
<h3><a name="compile"></a>compile</h3>
<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">
<tr class="a">
<th>GroupId</th>
<th>ArtifactId</th>
<th>Version</th>
<th>Type</th>
<th>Licenses</th></tr>
<tr class="b">
<td>org.apache.logging.log4j</td>
<td><a class="externalLink" href="https://logging.apache.org/log4j/2.x/log4j-api/">log4j-api</a></td>
<td>2.8.2</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.scala-lang</td>
<td><a class="externalLink" href="http://www.scala-lang.org/">scala-library</a></td>
<td>2.12.1</td>
<td>jar</td>
<td><a class="externalLink" href="http://www.scala-lang.org/license.html">BSD 3-Clause</a></td></tr>
<tr class="b">
<td>org.scala-lang</td>
<td><a class="externalLink" href="http://www.scala-lang.org/">scala-reflect</a></td>
<td>2.12.1</td>
<td>jar</td>
<td><a class="externalLink" href="http://www.scala-lang.org/license.html">BSD 3-Clause</a></td></tr></table></div><a name="Project_Dependencies_test"></a>
<div class="section">
<h3><a name="test"></a>test</h3>
<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">
<tr class="a">
<th>GroupId</th>
<th>ArtifactId</th>
<th>Version</th>
<th>Classifier</th>
<th>Type</th>
<th>Licenses</th></tr>
<tr class="b">
<td>junit</td>
<td><a class="externalLink" href="http://junit.org">junit</a></td>
<td>4.12</td>
<td>-</td>
<td>jar</td>
<td><a class="externalLink" href="http://www.eclipse.org/legal/epl-v10.html">Eclipse Public License 1.0</a></td></tr>
<tr class="a">
<td>org.apache.logging.log4j</td>
<td><a class="externalLink" href="https://logging.apache.org/log4j/2.x/log4j-api/">log4j-api</a></td>
<td>2.8.2</td>
<td>tests</td>
<td>test-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>org.mockito</td>
<td><a class="externalLink" href="http://www.mockito.org">mockito-core</a></td>
<td>1.10.19</td>
<td>-</td>
<td>jar</td>
<td><a class="externalLink" href="http://github.com/mockito/mockito/blob/master/LICENSE">The MIT License</a></td></tr>
<tr class="a">
<td>org.scalatest</td>
<td><a class="externalLink" href="http://www.scalatest.org">scalatest_2.12</a></td>
<td>3.0.0</td>
<td>-</td>
<td>jar</td>
<td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0">the Apache License, ASL Version 2.0</a></td></tr></table></div></div><a name="Project_Transitive_Dependencies"></a>
<div class="section">
<h2><a name="Project_Transitive_Dependencies"></a>Project Transitive Dependencies</h2>
<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_test"></a>
<div class="section">
<h3><a name="test"></a>test</h3>
<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">
<tr class="a">
<th>GroupId</th>
<th>ArtifactId</th>
<th>Version</th>
<th>Type</th>
<th>Licenses</th></tr>
<tr class="b">
<td>org.hamcrest</td>
<td><a class="externalLink" href="https://github.com/hamcrest/JavaHamcrest/hamcrest-core">hamcrest-core</a></td>
<td>1.3</td>
<td>jar</td>
<td><a class="externalLink" href="http://www.opensource.org/licenses/bsd-license.php">New BSD License</a></td></tr>
<tr class="a">
<td>org.objenesis</td>
<td><a class="externalLink" href="http://objenesis.org">objenesis</a></td>
<td>2.1</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.scala-lang.modules</td>
<td><a class="externalLink" href="http://www.scala-lang.org/">scala-parser-combinators_2.12</a></td>
<td>1.0.4</td>
<td>jar</td>
<td><a class="externalLink" href="http://opensource.org/licenses/BSD-3-Clause">BSD 3-clause</a></td></tr>
<tr class="a">
<td>org.scala-lang.modules</td>
<td><a class="externalLink" href="http://www.scala-lang.org/">scala-xml_2.12</a></td>
<td>1.0.5</td>
<td>jar</td>
<td><a class="externalLink" href="http://opensource.org/licenses/BSD-3-Clause">BSD 3-clause</a></td></tr>
<tr class="b">
<td>org.scalactic</td>
<td><a class="externalLink" href="http://www.scalatest.org">scalactic_2.12</a></td>
<td>3.0.0</td>
<td>jar</td>
<td><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0">the Apache License, ASL Version 2.0</a></td></tr></table></div></div><a name="Project_Dependency_Graph"></a>
<div class="section">
<h2><a name="Project_Dependency_Graph"></a>Project Dependency Graph</h2>
<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>
<div class="section">
<h3><a name="Dependency_Tree"></a>Dependency Tree</h3>
<ul>
<li>org.apache.logging.log4j:log4j-api-scala_2.12:jar:11.0 <img id="_img1" src="./images/icon_info_sml.gif" alt="[Information]" onclick="toggleDependencyDetails( '_dep0', '_img1' );" style="cursor: pointer; vertical-align: text-bottom;"></img><div id="_dep0" style="display:none">
<table border="0" class="bodyTable">
<tr class="a">
<th>Scala 2.12 wrapper for Log4j API</th></tr>
<tr class="b">
<td>
<p><b>Description: </b>Scala wrapper for Log4j API</p>
<p><b>URL: </b><a class="externalLink" href="http://logging.apache.org/log4j/2.x/log4j-api-scala_2.12/">http://logging.apache.org/log4j/2.x/log4j-api-scala_2.12/</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></table></div>
<ul>
<li>org.apache.logging.log4j:log4j-api:jar:2.8.2 (compile) <img id="_img3" src="./images/icon_info_sml.gif" alt="[Information]" onclick="toggleDependencyDetails( '_dep2', '_img3' );" style="cursor: pointer; vertical-align: text-bottom;"></img><div id="_dep2" style="display:none">
<table border="0" class="bodyTable">
<tr class="a">
<th>Apache Log4j API</th></tr>
<tr class="b">
<td>
<p><b>Description: </b>The Apache Log4j API</p>
<p><b>URL: </b><a class="externalLink" href="https://logging.apache.org/log4j/2.x/log4j-api/">https://logging.apache.org/log4j/2.x/log4j-api/</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></table></div></li>
<li>org.scala-lang:scala-library:jar:2.12.1 (compile) <img id="_img5" src="./images/icon_info_sml.gif" alt="[Information]" onclick="toggleDependencyDetails( '_dep4', '_img5' );" style="cursor: pointer; vertical-align: text-bottom;"></img><div id="_dep4" style="display:none">
<table border="0" class="bodyTable">
<tr class="a">
<th>Scala Library</th></tr>
<tr class="b">
<td>
<p><b>Description: </b>Standard library for the Scala Programming Language</p>
<p><b>URL: </b><a class="externalLink" href="http://www.scala-lang.org/">http://www.scala-lang.org/</a></p>
<p><b>Project Licenses: </b><a class="externalLink" href="http://www.scala-lang.org/license.html">BSD 3-Clause</a></p></td></tr></table></div></li>
<li>org.scala-lang:scala-reflect:jar:2.12.1 (compile) <img id="_img7" src="./images/icon_info_sml.gif" alt="[Information]" onclick="toggleDependencyDetails( '_dep6', '_img7' );" style="cursor: pointer; vertical-align: text-bottom;"></img><div id="_dep6" style="display:none">
<table border="0" class="bodyTable">
<tr class="a">
<th>Scala Compiler</th></tr>
<tr class="b">
<td>
<p><b>Description: </b>Compiler for the Scala Programming Language</p>
<p><b>URL: </b><a class="externalLink" href="http://www.scala-lang.org/">http://www.scala-lang.org/</a></p>
<p><b>Project Licenses: </b><a class="externalLink" href="http://www.scala-lang.org/license.html">BSD 3-Clause</a></p></td></tr></table></div></li>
<li>org.apache.logging.log4j:log4j-api:test-jar:tests:2.8.2 (test) <img id="_img9" src="./images/icon_info_sml.gif" alt="[Information]" onclick="toggleDependencyDetails( '_dep8', '_img9' );" style="cursor: pointer; vertical-align: text-bottom;"></img><div id="_dep8" style="display:none">
<table border="0" class="bodyTable">
<tr class="a">
<th>Apache Log4j API</th></tr>
<tr class="b">
<td>
<p><b>Description: </b>The Apache Log4j API</p>
<p><b>URL: </b><a class="externalLink" href="https://logging.apache.org/log4j/2.x/log4j-api/">https://logging.apache.org/log4j/2.x/log4j-api/</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></table></div></li>
<li>junit:junit:jar:4.12 (test) <img id="_img11" src="./images/icon_info_sml.gif" alt="[Information]" onclick="toggleDependencyDetails( '_dep10', '_img11' );" style="cursor: pointer; vertical-align: text-bottom;"></img><div id="_dep10" style="display:none">
<table border="0" class="bodyTable">
<tr class="a">
<th>JUnit</th></tr>
<tr class="b">
<td>
<p><b>Description: </b>JUnit is a unit testing framework for Java, created by Erich Gamma and Kent Beck.</p>
<p><b>URL: </b><a class="externalLink" href="http://junit.org">http://junit.org</a></p>
<p><b>Project Licenses: </b><a class="externalLink" href="http://www.eclipse.org/legal/epl-v10.html">Eclipse Public License 1.0</a></p></td></tr></table></div>
<ul>
<li>org.hamcrest:hamcrest-core:jar:1.3 (test) <img id="_img13" src="./images/icon_info_sml.gif" alt="[Information]" onclick="toggleDependencyDetails( '_dep12', '_img13' );" style="cursor: pointer; vertical-align: text-bottom;"></img><div id="_dep12" style="display:none">
<table border="0" class="bodyTable">
<tr class="a">
<th>Hamcrest Core</th></tr>
<tr class="b">
<td>
<p><b>Description: </b>This is the core API of hamcrest matcher framework to be used by third-party framework providers. This includes the a foundation set of matcher implementations for common operations.</p>
<p><b>URL: </b><a class="externalLink" href="https://github.com/hamcrest/JavaHamcrest/hamcrest-core">https://github.com/hamcrest/JavaHamcrest/hamcrest-core</a></p>
<p><b>Project Licenses: </b><a class="externalLink" href="http://www.opensource.org/licenses/bsd-license.php">New BSD License</a></p></td></tr></table></div></li></ul></li>
<li>org.scalatest:scalatest_2.12:jar:3.0.0 (test) <img id="_img15" src="./images/icon_info_sml.gif" alt="[Information]" onclick="toggleDependencyDetails( '_dep14', '_img15' );" style="cursor: pointer; vertical-align: text-bottom;"></img><div id="_dep14" style="display:none">
<table border="0" class="bodyTable">
<tr class="a">
<th>scalatest</th></tr>
<tr class="b">
<td>
<p><b>Description: </b>scalatest</p>
<p><b>URL: </b><a class="externalLink" href="http://www.scalatest.org">http://www.scalatest.org</a></p>
<p><b>Project Licenses: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0">the Apache License, ASL Version 2.0</a></p></td></tr></table></div>
<ul>
<li>org.scalactic:scalactic_2.12:jar:3.0.0 (test) <img id="_img17" src="./images/icon_info_sml.gif" alt="[Information]" onclick="toggleDependencyDetails( '_dep16', '_img17' );" style="cursor: pointer; vertical-align: text-bottom;"></img><div id="_dep16" style="display:none">
<table border="0" class="bodyTable">
<tr class="a">
<th>scalactic</th></tr>
<tr class="b">
<td>
<p><b>Description: </b>scalactic</p>
<p><b>URL: </b><a class="externalLink" href="http://www.scalatest.org">http://www.scalatest.org</a></p>
<p><b>Project Licenses: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0">the Apache License, ASL Version 2.0</a></p></td></tr></table></div></li>
<li>org.scala-lang.modules:scala-xml_2.12:jar:1.0.5 (test) <img id="_img19" src="./images/icon_info_sml.gif" alt="[Information]" onclick="toggleDependencyDetails( '_dep18', '_img19' );" style="cursor: pointer; vertical-align: text-bottom;"></img><div id="_dep18" style="display:none">
<table border="0" class="bodyTable">
<tr class="a">
<th>scala-xml</th></tr>
<tr class="b">
<td>
<p><b>Description: </b>scala-xml</p>
<p><b>URL: </b><a class="externalLink" href="http://www.scala-lang.org/">http://www.scala-lang.org/</a></p>
<p><b>Project Licenses: </b><a class="externalLink" href="http://opensource.org/licenses/BSD-3-Clause">BSD 3-clause</a></p></td></tr></table></div></li>
<li>org.scala-lang.modules:scala-parser-combinators_2.12:jar:1.0.4 (test) <img id="_img21" src="./images/icon_info_sml.gif" alt="[Information]" onclick="toggleDependencyDetails( '_dep20', '_img21' );" style="cursor: pointer; vertical-align: text-bottom;"></img><div id="_dep20" style="display:none">
<table border="0" class="bodyTable">
<tr class="a">
<th>scala-parser-combinators</th></tr>
<tr class="b">
<td>
<p><b>Description: </b>scala-parser-combinators</p>
<p><b>URL: </b><a class="externalLink" href="http://www.scala-lang.org/">http://www.scala-lang.org/</a></p>
<p><b>Project Licenses: </b><a class="externalLink" href="http://opensource.org/licenses/BSD-3-Clause">BSD 3-clause</a></p></td></tr></table></div></li></ul></li>
<li>org.mockito:mockito-core:jar:1.10.19 (test) <img id="_img23" src="./images/icon_info_sml.gif" alt="[Information]" onclick="toggleDependencyDetails( '_dep22', '_img23' );" style="cursor: pointer; vertical-align: text-bottom;"></img><div id="_dep22" style="display:none">
<table border="0" class="bodyTable">
<tr class="a">
<th>Mockito</th></tr>
<tr class="b">
<td>
<p><b>Description: </b>Mock objects library for java</p>
<p><b>URL: </b><a class="externalLink" href="http://www.mockito.org">http://www.mockito.org</a></p>
<p><b>Project Licenses: </b><a class="externalLink" href="http://github.com/mockito/mockito/blob/master/LICENSE">The MIT License</a></p></td></tr></table></div>
<ul>
<li>org.objenesis:objenesis:jar:2.1 (test) <img id="_img25" src="./images/icon_info_sml.gif" alt="[Information]" onclick="toggleDependencyDetails( '_dep24', '_img25' );" style="cursor: pointer; vertical-align: text-bottom;"></img><div id="_dep24" style="display:none">
<table border="0" class="bodyTable">
<tr class="a">
<th>Objenesis</th></tr>
<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">http://objenesis.org</a></p>
<p><b>Project Licenses: </b><a class="externalLink" href="http://www.apache.org/licenses/LICENSE-2.0.txt">Apache 2</a></p></td></tr></table></div></li></ul></li></ul></li></ul></div></div><a name="Licenses"></a>
<div class="section">
<h2><a name="Licenses"></a>Licenses</h2>
<p><b>BSD 3-clause: </b>scala-parser-combinators, scala-xml</p>
<p><b>Apache 2: </b>Objenesis</p>
<p><b>the Apache License, ASL Version 2.0: </b>scalactic, scalatest</p>
<p><b>Eclipse Public License 1.0: </b>JUnit</p>
<p><b>The MIT License: </b>Mockito</p>
<p><b>Apache License, Version 2.0: </b>Apache Log4j API, Scala 2.12 wrapper for Log4j API</p>
<p><b>BSD 3-Clause: </b>Scala Compiler, Scala Library</p>
<p><b>New BSD License: </b>Hamcrest Core</p></div><a name="Dependency_File_Details"></a>
<div class="section">
<h2><a name="Dependency_File_Details"></a>Dependency File Details</h2>
<table border="0" class="bodyTable">
<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>junit-4.12.jar</td>
<td>314.9 kB</td>
<td>323</td>
<td>286</td>
<td>30</td>
<td>1.5</td>
<td>Yes</td></tr>
<tr class="a">
<td>log4j-api-2.8.2.jar</td>
<td>228.2 kB</td>
<td>162</td>
<td>143</td>
<td>6</td>
<td>1.7</td>
<td>Yes</td></tr>
<tr class="b">
<td>log4j-api-2.8.2-tests.jar</td>
<td>194 kB</td>
<td>-</td>
<td>-</td>
<td>-</td>
<td>-</td>
<td>-</td></tr>
<tr class="a">
<td>hamcrest-core-1.3.jar</td>
<td>45 kB</td>
<td>52</td>
<td>45</td>
<td>3</td>
<td>1.5</td>
<td>Yes</td></tr>
<tr class="b">
<td>mockito-core-1.10.19.jar</td>
<td>1.2 MB</td>
<td>1138</td>
<td>694</td>
<td>67</td>
<td>1.5</td>
<td>Yes</td></tr>
<tr class="a">
<td>objenesis-2.1.jar</td>
<td>41.8 kB</td>
<td>52</td>
<td>37</td>
<td>9</td>
<td>1.5</td>
<td>Yes</td></tr>
<tr class="b">
<td>scala-library-2.12.1.jar</td>
<td>5.3 MB</td>
<td>2540</td>
<td>2502</td>
<td>34</td>
<td>1.8</td>
<td>Yes</td></tr>
<tr class="a">
<td>scala-reflect-2.12.1.jar</td>
<td>3.5 MB</td>
<td>1366</td>
<td>1349</td>
<td>13</td>
<td>1.8</td>
<td>Yes</td></tr>
<tr class="b">
<td>scala-parser-combinators_2.12-1.0.4.jar</td>
<td>204.3 kB</td>
<td>100</td>
<td>89</td>
<td>6</td>
<td>1.8</td>
<td>Yes</td></tr>
<tr class="a">
<td>scala-xml_2.12-1.0.5.jar</td>
<td>548.4 kB</td>
<td>250</td>
<td>237</td>
<td>10</td>
<td>1.8</td>
<td>Yes</td></tr>
<tr class="b">
<td>scalactic_2.12-3.0.0.jar</td>
<td>704.7 kB</td>
<td>311</td>
<td>304</td>
<td>4</td>
<td>1.8</td>
<td>Yes</td></tr>
<tr class="a">
<td>scalatest_2.12-3.0.0.jar</td>
<td>7 MB</td>
<td>2574</td>
<td>2513</td>
<td>23</td>
<td>1.8</td>
<td>Yes</td></tr>
<tr class="b">
<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="a">
<td>12</td>
<td>19.3 MB</td>
<td>8868</td>
<td>8199</td>
<td>205</td>
<td>1.8</td>
<td>11</td></tr>
<tr class="b">
<td>compile: 3</td>
<td>compile: 9 MB</td>
<td>compile: 4068</td>
<td>compile: 3994</td>
<td>compile: 53</td>
<td>-</td>
<td>compile: 3</td></tr>
<tr class="a">
<td>test: 9</td>
<td>test: 10.2 MB</td>
<td>test: 4800</td>
<td>test: 4205</td>
<td>test: 152</td>
<td>-</td>
<td>test: 8</td></tr></table></div><a name="Dependency_Repository_Locations"></a>
<div class="section">
<h2><a name="Dependency_Repository_Locations"></a>Dependency Repository Locations</h2>
<table border="0" class="bodyTable">
<tr class="a">
<th>Repo ID</th>
<th>URL</th>
<th>Release</th>
<th>Snapshot</th></tr>
<tr class="b">
<td>central</td>
<td><a class="externalLink" href="https://repo.maven.apache.org/maven2">https://repo.maven.apache.org/maven2</a></td>
<td>Yes</td>
<td>No</td></tr>
<tr class="a">
<td>apache.snapshots</td>
<td><a class="externalLink" href="https://repository.apache.org/snapshots">https://repository.apache.org/snapshots</a></td>
<td>No</td>
<td>Yes</td></tr></table>
<p>Repository locations for each of the Dependencies.</p>
<table border="0" class="bodyTable">
<tr class="a">
<th>Artifact</th>
<th>central</th>
<th>apache.snapshots</th></tr>
<tr class="b">
<td>junit:junit:jar:4.12</td>
<td><a class="externalLink" href="https://repo.maven.apache.org/maven2/junit/junit/4.12/junit-4.12.jar"><img alt="Found at https://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td>
<td>-</td></tr>
<tr class="a">
<td>org.apache.logging.log4j:log4j-api:jar:2.8.2</td>
<td><a class="externalLink" href="https://repo.maven.apache.org/maven2/org/apache/logging/log4j/log4j-api/2.8.2/log4j-api-2.8.2.jar"><img alt="Found at https://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td>
<td>-</td></tr>
<tr class="b">
<td>org.apache.logging.log4j:log4j-api:test-jar:tests:2.8.2</td>
<td><a class="externalLink" href="https://repo.maven.apache.org/maven2/org/apache/logging/log4j/log4j-api/2.8.2/log4j-api-2.8.2-tests.jar"><img alt="Found at https://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td>
<td>-</td></tr>
<tr class="a">
<td>org.hamcrest:hamcrest-core:jar:1.3</td>
<td><a class="externalLink" href="https://repo.maven.apache.org/maven2/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar"><img alt="Found at https://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td>
<td>-</td></tr>
<tr class="b">
<td>org.mockito:mockito-core:jar:1.10.19</td>
<td><a class="externalLink" href="https://repo.maven.apache.org/maven2/org/mockito/mockito-core/1.10.19/mockito-core-1.10.19.jar"><img alt="Found at https://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td>
<td>-</td></tr>
<tr class="a">
<td>org.objenesis:objenesis:jar:2.1</td>
<td><a class="externalLink" href="https://repo.maven.apache.org/maven2/org/objenesis/objenesis/2.1/objenesis-2.1.jar"><img alt="Found at https://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td>
<td>-</td></tr>
<tr class="b">
<td>org.scala-lang:scala-library:jar:2.12.1</td>
<td><a class="externalLink" href="https://repo.maven.apache.org/maven2/org/scala-lang/scala-library/2.12.1/scala-library-2.12.1.jar"><img alt="Found at https://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td>
<td>-</td></tr>
<tr class="a">
<td>org.scala-lang:scala-reflect:jar:2.12.1</td>
<td><a class="externalLink" href="https://repo.maven.apache.org/maven2/org/scala-lang/scala-reflect/2.12.1/scala-reflect-2.12.1.jar"><img alt="Found at https://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td>
<td>-</td></tr>
<tr class="b">
<td>org.scala-lang.modules:scala-parser-combinators_2.12:jar:1.0.4</td>
<td><a class="externalLink" href="https://repo.maven.apache.org/maven2/org/scala-lang/modules/scala-parser-combinators_2.12/1.0.4/scala-parser-combinators_2.12-1.0.4.jar"><img alt="Found at https://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td>
<td>-</td></tr>
<tr class="a">
<td>org.scala-lang.modules:scala-xml_2.12:jar:1.0.5</td>
<td><a class="externalLink" href="https://repo.maven.apache.org/maven2/org/scala-lang/modules/scala-xml_2.12/1.0.5/scala-xml_2.12-1.0.5.jar"><img alt="Found at https://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td>
<td>-</td></tr>
<tr class="b">
<td>org.scalactic:scalactic_2.12:jar:3.0.0</td>
<td><a class="externalLink" href="https://repo.maven.apache.org/maven2/org/scalactic/scalactic_2.12/3.0.0/scalactic_2.12-3.0.0.jar"><img alt="Found at https://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td>
<td>-</td></tr>
<tr class="a">
<td>org.scalatest:scalatest_2.12:jar:3.0.0</td>
<td><a class="externalLink" href="https://repo.maven.apache.org/maven2/org/scalatest/scalatest_2.12/3.0.0/scalatest_2.12-3.0.0.jar"><img alt="Found at https://repo.maven.apache.org/maven2" src="images/icon_success_sml.gif" /></a></td>
<td>-</td></tr>
<tr class="b">
<th>Total</th>
<th>central</th>
<th>apache.snapshots</th></tr>
<tr class="a">
<td>12 (compile: 3, test: 9)</td>
<td>12</td>
<td>0</td></tr></table></div>
					</td>
				</tr>
			</table>
		</div>

		<div class="footer">
							<p>Copyright &copy; 1999-2017 <a class="external" href="https://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.</p>
				<p>Apache Logging, Apache Log4j, Log4j, Apache, the Apache feather logo, and the Apache Logging project logo are trademarks of The Apache Software Foundation.</p>
				<p>Site powered by <a class="external" href="http://getbootstrap.com/">Twitter Bootstrap</a>. Icons from <a class="external" href="http://glyphicons.com/">Glyphicons Free</a>.</p>
			</div>
		</div>
	</body>
</html>
