<!DOCTYPE html>
<!--
 | Generated by Apache Maven Doxia Site Renderer 1.9.1 from src/site/markdown/maven-artifacts.md.vm at 2020-02-25
 | Rendered using Apache Maven Fluido Skin 1.8
-->
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <meta name="generator" content="Apache Maven Doxia Site Renderer 1.9.1" />
    <title>Log4j &#x2013; Maven, Ivy, Gradle, and SBT Artifacts</title>
    <link rel="stylesheet" href="./css/apache-maven-fluido-1.8.min.css" />
    <link rel="stylesheet" href="./css/site.css" />
    <link rel="stylesheet" href="./css/print.css" media="print" />
    <script src="./js/apache-maven-fluido-1.8.min.js"></script>
  </head>
  <body class="topBarDisabled">
    <div class="container-fluid">
      <header>
        <div id="banner">
          <div class="pull-left"><a href="http://logging.apache.org" id="bannerLeft"><img src="images/ls-logo.jpg"  alt=""/></a></div>
          <div class="pull-right"><a href="http://logging.apache.org/log4j/2.x" id="bannerRight"><img src="images/logo.png"  alt=""/></a></div>
          <div class="clear"><hr/></div>
        </div>

        <div id="breadcrumbs">
          <ul class="breadcrumb">
        <li id="publishDate">Last Published: 2020-02-25<span class="divider">|</span>
</li>
          <li id="projectVersion">Version: 2.13.1</li>
      <li class="pull-right"><span class="divider">|</span>
<a href="https://github.com/apache/logging-log4j2" class="externalLink" title="GitHub">GitHub</a></li>
      <li class="pull-right"><span class="divider">|</span>
<a href="https://analysis.apache.org/dashboard/index/org.apache.logging.log4j:log4j" class="externalLink" title="Sonar">Sonar</a></li>
      <li class="pull-right"><span class="divider">|</span>
<a href="../../" title="Logging Services">Logging Services</a></li>
      <li class="pull-right"><span class="divider">|</span>
<a href="https://www.apache.org/" class="externalLink" title="Apache">Apache</a></li>
      <li class="pull-right"><a href="https://cwiki.apache.org/confluence/display/LOGGING/Log4j" class="externalLink" title="Logging Wiki">Logging Wiki</a></li>
          </ul>
        </div>
      </header>
      <div class="row-fluid">
        <header id="leftColumn" class="span2">
          <nav class="well sidebar-nav">
  <ul class="nav nav-list">
   <li class="nav-header"><img class="imageLink" src="img/glyphicons/home.png" alt="Apache Log4j™ 2" border="0"/> Apache Log4j™ 2</li>
    <li><a href="index.html" title="About"><span class="none"></span>About</a></li>
    <li><a href="download.html" title="Download"><span class="none"></span>Download</a></li>
    <li><a href="javadoc.html" title="Javadoc"><span class="icon-chevron-right"></span>Javadoc</a></li>
    <li class="active"><a href="#"><span class="icon-chevron-down"></span>Maven, Ivy, Gradle Artifacts</a>
     <ul class="nav nav-list">
      <li><a href="maven-artifacts.html#Using_Log4j_in_your_Apache_Maven_build" title="Maven"><span class="none"></span>Maven</a></li>
      <li><a href="maven-artifacts.html#Using_Log4j_in_your_Apache_Ivy_build" title="Ivy"><span class="none"></span>Ivy</a></li>
      <li><a href="maven-artifacts.html#Using_Log4j_in_your_Gradle_build" title="Gradle"><span class="none"></span>Gradle</a></li>
      <li><a href="maven-artifacts.html#Using_Log4j_in_your_SBT_build" title="SBT"><span class="none"></span>SBT</a></li>
      <li><a href="maven-artifacts.html#Bill_of_Material" title="Bill of Material"><span class="none"></span>Bill of Material</a></li>
      <li><a href="maven-artifacts.html#Optional_Components" title="Optional Components"><span class="none"></span>Optional Components</a></li>
      <li><a href="maven-artifacts.html#Snapshot_builds" title="Snapshot builds"><span class="none"></span>Snapshot builds</a></li>
     </ul></li>
    <li><a href="runtime-dependencies.html" title="Runtime Dependencies"><span class="none"></span>Runtime Dependencies</a></li>
    <li><a href="changelog.html" title="Changelog"><span class="none"></span>Changelog</a></li>
    <li><a href="faq.html" title="FAQ"><span class="none"></span>FAQ</a></li>
    <li><a href="performance.html" title="Performance"><span class="icon-chevron-right"></span>Performance</a></li>
    <li><a href="articles.html" title="Articles and Tutorials"><span class="none"></span>Articles and Tutorials</a></li>
    <li><a href="support.html" title="Support"><span class="none"></span>Support</a></li>
    <li><a href="thanks.html" title="Thanks"><span class="none"></span>Thanks</a></li>
   <li class="nav-header"><img class="imageLink" src="img/glyphicons/pencil.png" alt="For Contributors" border="0"/> For Contributors</li>
    <li><a href="build.html" title="Building Log4j from Source"><span class="none"></span>Building Log4j from Source</a></li>
    <li><a href="guidelines.html" title="Guidelines"><span class="none"></span>Guidelines</a></li>
    <li><a href="javastyle.html" title="Style Guide"><span class="none"></span>Style Guide</a></li>
   <li class="nav-header"><img class="imageLink" src="img/glyphicons/book.png" alt="Manual" border="0"/> Manual</li>
    <li><a href="manual/index.html" title="Introduction"><span class="none"></span>Introduction</a></li>
    <li><a href="manual/architecture.html" title="Architecture"><span class="none"></span>Architecture</a></li>
    <li><a href="manual/compatibility.html" title="Log4j 1.x Compatibility"><span class="none"></span>Log4j 1.x Compatibility</a></li>
    <li><a href="manual/migration.html" title="Log4j 1.x Migration"><span class="none"></span>Log4j 1.x Migration</a></li>
    <li><a href="manual/api.html" title="Java API"><span class="icon-chevron-right"></span>Java API</a></li>
    <li><a href="manual/scala-api.html" title="Scala API"><span class="none"></span>Scala API</a></li>
    <li><a href="manual/configuration.html" title="Configuration"><span class="icon-chevron-right"></span>Configuration</a></li>
    <li><a href="manual/usage.html" title="Usage"><span class="icon-chevron-right"></span>Usage</a></li>
    <li><a href="manual/webapp.html" title="Web Applications and JSPs"><span class="icon-chevron-right"></span>Web Applications and JSPs</a></li>
    <li><a href="manual/lookups.html" title="Lookups"><span class="icon-chevron-right"></span>Lookups</a></li>
    <li><a href="manual/appenders.html" title="Appenders"><span class="icon-chevron-right"></span>Appenders</a></li>
    <li><a href="manual/layouts.html" title="Layouts"><span class="icon-chevron-right"></span>Layouts</a></li>
    <li><a href="manual/filters.html" title="Filters"><span class="icon-chevron-right"></span>Filters</a></li>
    <li><a href="manual/async.html" title="Async Loggers"><span class="icon-chevron-right"></span>Async Loggers</a></li>
    <li><a href="manual/garbagefree.html" title="Garbage-free Logging"><span class="icon-chevron-right"></span>Garbage-free Logging</a></li>
    <li><a href="manual/jmx.html" title="JMX"><span class="none"></span>JMX</a></li>
    <li><a href="manual/logsep.html" title="Logging Separation"><span class="none"></span>Logging Separation</a></li>
    <li><a href="manual/extending.html" title="Extending Log4j"><span class="icon-chevron-right"></span>Extending Log4j</a></li>
    <li><a href="manual/plugins.html" title="Plugins"><span class="icon-chevron-right"></span>Plugins</a></li>
    <li><a href="manual/customconfig.html" title="Programmatic Log4j Configuration"><span class="icon-chevron-right"></span>Programmatic Log4j Configuration</a></li>
    <li><a href="manual/customloglevels.html" title="Custom Log Levels"><span class="icon-chevron-right"></span>Custom Log Levels</a></li>
   <li class="nav-header"><img class="imageLink" src="img/glyphicons/tag.png" alt="Related Projects" border="0"/> Related Projects</li>
    <li><a href="http://logging.apache.org/log4j/scala/index.html" class="externalLink" title="Log4j-Scala"><span class="none"></span>Log4j-Scala</a></li>
   <li class="nav-header"><img class="imageLink" src="img/glyphicons/link.png" alt="Legacy Sites" border="0"/> Legacy Sites</li>
    <li><a href="http://logging.apache.org/log4j/1.2/" class="externalLink" title="Log4j 1.2 - End of Life"><span class="none"></span>Log4j 1.2 - End of Life</a></li>
    <li><a href="http://logging.apache.org/log4j/log4j-2.3/" class="externalLink" title="Log4j 2.3 - Java 6"><span class="none"></span>Log4j 2.3 - Java 6</a></li>
    <li><a href="http://logging.apache.org/log4j/log4j-2.12.1" class="externalLink" title="Log4j 2.12.1 - Java 7"><span class="none"></span>Log4j 2.12.1 - Java 7</a></li>
   <li class="nav-header"><img class="imageLink" src="img/glyphicons/cog.png" alt="Components" border="0"/> Components</li>
    <li><a href="log4j-api/index.html" title="API"><span class="none"></span>API</a></li>
    <li><a href="log4j-core/index.html" title="Implementation"><span class="none"></span>Implementation</a></li>
    <li><a href="log4j-jcl/index.html" title="Commons Logging Bridge"><span class="none"></span>Commons Logging Bridge</a></li>
    <li><a href="log4j-1.2-api/index.html" title="Log4j 1.2 API"><span class="none"></span>Log4j 1.2 API</a></li>
    <li><a href="log4j-slf4j-impl/index.html" title="SLF4J Binding"><span class="none"></span>SLF4J Binding</a></li>
    <li><a href="log4j-jul/index.html" title="JUL Adapter"><span class="none"></span>JUL Adapter</a></li>
    <li><a href="log4j-to-slf4j/index.html" title="Log4j 2 to SLF4J Adapter"><span class="none"></span>Log4j 2 to SLF4J Adapter</a></li>
    <li><a href="log4j-flume-ng/index.html" title="Apache Flume Appender"><span class="none"></span>Apache Flume Appender</a></li>
    <li><a href="log4j-taglib/index.html" title="Log4j Tag Library"><span class="none"></span>Log4j Tag Library</a></li>
    <li><a href="log4j-jmx-gui/index.html" title="Log4j JMX GUI"><span class="none"></span>Log4j JMX GUI</a></li>
    <li><a href="log4j-web/index.html" title="Log4j Web Application Support"><span class="none"></span>Log4j Web Application Support</a></li>
    <li><a href="log4j-appserver/index.html" title="Log4j Application Server Integration"><span class="none"></span>Log4j Application Server Integration</a></li>
    <li><a href="log4j-couchdb/index.html" title="Log4j CouchDB appender"><span class="none"></span>Log4j CouchDB appender</a></li>
    <li><a href="log4j-mongodb2/index.html" title="Log4j MongoDB2 appender"><span class="none"></span>Log4j MongoDB2 appender</a></li>
    <li><a href="log4j-mongodb3/index.html" title="Log4j MongoDB3 appender"><span class="none"></span>Log4j MongoDB3 appender</a></li>
    <li><a href="log4j-cassandra/index.html" title="Log4j Cassandra appender"><span class="none"></span>Log4j Cassandra appender</a></li>
    <li><a href="log4j-iostreams/index.html" title="Log4j IO Streams"><span class="none"></span>Log4j IO Streams</a></li>
    <li><a href="log4j-liquibase/index.html" title="Log4j Liquibase Binding"><span class="none"></span>Log4j Liquibase Binding</a></li>
    <li><a href="log4j-docker/index.html" title="Log4j Docker Support"><span class="none"></span>Log4j Docker Support</a></li>
    <li><a href="log4j-spring-cloud-config/log4j-spring-cloud-config-client/index.html" title="Log4j Spring Cloud Config Client"><span class="none"></span>Log4j Spring Cloud Config Client</a></li>
   <li class="nav-header"><img class="imageLink" src="img/glyphicons/info.png" alt="Project Information" border="0"/> Project Information</li>
    <li><a href="dependency-convergence.html" title="Dependency Convergence"><span class="none"></span>Dependency Convergence</a></li>
    <li><a href="dependency-management.html" title="Dependency Management"><span class="none"></span>Dependency Management</a></li>
    <li><a href="team-list.html" title="Project Team"><span class="none"></span>Project Team</a></li>
    <li><a href="mail-lists.html" title="Mailing Lists"><span class="none"></span>Mailing Lists</a></li>
    <li><a href="issue-tracking.html" title="Issue Tracking"><span class="none"></span>Issue Tracking</a></li>
    <li><a href="license.html" title="Project License"><span class="none"></span>Project License</a></li>
    <li><a href="source-repository.html" title="Source Repository"><span class="none"></span>Source Repository</a></li>
    <li><a href="project-summary.html" title="Project Summary"><span class="none"></span>Project Summary</a></li>
   <li class="nav-header"><img class="imageLink" src="img/glyphicons/layers.png" alt="Project Reports" border="0"/> Project Reports</li>
    <li><a href="changes-report.html" title="Changes Report"><span class="none"></span>Changes Report</a></li>
    <li><a href="jira-report.html" title="JIRA Report"><span class="none"></span>JIRA Report</a></li>
    <li><a href="rat-report.html" title="RAT Report"><span class="none"></span>RAT Report</a></li>
  </ul>
          </nav>
          <div class="well sidebar-nav">
            <hr />
            <div id="poweredBy">
              <div class="clear"></div>
              <div class="clear"></div>
              <div class="clear"></div>
<a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
            </div>
          </div>
        </header>
        <main id="bodyColumn"  class="span10" >
<!-- vim: set syn=markdown : -->
<!--
 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.
-->
<h1>Maven, Ivy, Gradle, and SBT Artifacts</h1>
<p>Log4j 2 is broken up in an API and an implementation (core), where the API provides the interface that applications should code to. Strictly speaking Log4j core is only needed at runtime and not at compile time.</p>
<p>However, below we list Log4j core as a compile time dependency to improve the startup time for <a href="manual/plugins.html">custom plugins</a> as it provides an annotation processor that generates a metadata file to cache plugin information as well as the necessary code to compile against to create custom plugins.</p><section>
<h2><a name="Using_Log4j_in_your_Apache_Maven_build"></a>Using Log4j in your Apache Maven build</h2>
<p>To build with <a class="externalLink" href="https://maven.apache.org/">Apache Maven</a>, add the dependencies listed below to your pom.xml file.</p>
<p>pom.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency&gt;
    &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
    &lt;artifactId&gt;log4j-api&lt;/artifactId&gt;
    &lt;version&gt;2.13.1&lt;/version&gt;
  &lt;/dependency&gt;
  &lt;dependency&gt;
    &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
    &lt;artifactId&gt;log4j-core&lt;/artifactId&gt;
    &lt;version&gt;2.13.1&lt;/version&gt;
  &lt;/dependency&gt;
&lt;/dependencies&gt;
</pre></div></div>
</section><section>
<h2><a name="Using_Log4j_in_your_Apache_Ivy_build"></a>Using Log4j in your Apache Ivy build</h2>
<p>To build with <a class="externalLink" href="https://ant.apache.org/ivy/">Apache Ivy</a>, add the dependencies listed below to your ivy.xml file.</p>
<p>ivy.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency org=&quot;org.apache.logging.log4j&quot; name=&quot;log4j-api&quot; rev=&quot;2.13.1&quot; /&gt;
  &lt;dependency org=&quot;org.apache.logging.log4j&quot; name=&quot;log4j-core&quot; rev=&quot;2.13.1&quot; /&gt;
&lt;/dependencies&gt;
</pre></div></div>
</section><section>
<h2><a name="Using_Log4j_in_your_Gradle_build"></a>Using Log4j in your Gradle build</h2>
<p>To build with <a class="externalLink" href="https://gradle.org/">Gradle</a>, add the dependencies listed below to your build.gradle file.</p>
<p>build.gradle</p>

<div>
<div>
<pre class="source">dependencies {
  compile group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.13.1'
  compile group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.13.1'
}
</pre></div></div>
</section><section>
<h2><a name="Using_Log4j_in_your_SBT_build"></a>Using Log4j in your SBT build</h2>
<p>To build with <a class="externalLink" href="http://www.scala-sbt.org/">SBT</a>, add the dependencies listed below to your build.sbt file.</p>
<p>build.sbt</p>

<div>
<div>
<pre class="source">libraryDependencies += &quot;org.apache.logging.log4j&quot; % &quot;log4j-api&quot; % &quot;2.13.1&quot;
libraryDependencies += &quot;org.apache.logging.log4j&quot; % &quot;log4j-core&quot; % &quot;2.13.1&quot;
</pre></div></div>
</section><section>
<h2><a name="Bill_of_Material"></a>Bill of Material</h2>
<p>To keep your Log4j module versions in sync with each other, a <abbr id="Bill of Material">BOM</abbr> pom.xml file is provided for your convenience. To use this with <a class="externalLink" href="https://maven.apache.org/">Maven</a>, add the dependency listed below to your pom.xml file. When you specify the version identifier in this section, you don&#x2019;t have to specify the version in your &lt;dependencies/&gt; section.</p>
<p>pom.xml</p>

<div>
<div>
<pre class="source">&lt;dependencyManagement&gt;
  &lt;dependencies&gt;
    &lt;dependency&gt;
      &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
      &lt;artifactId&gt;log4j-bom&lt;/artifactId&gt;
      &lt;version&gt;2.13.1&lt;/version&gt;
      &lt;scope&gt;import&lt;/scope&gt;
      &lt;type&gt;pom&lt;/type&gt;
    &lt;/dependency&gt;
  &lt;/dependencies&gt;
&lt;/dependencyManagement&gt;
</pre></div></div>

<p>To use this with Gradle, an additional <a class="externalLink" href="https://github.com/spring-gradle-plugins/dependency-management-plugin">Gradle plugin</a> is required for dependency management functionality.</p>
<p>build.gradle</p>

<div>
<div>
<pre class="source">plugins {
  id 'io.spring.dependency-management' version '1.0.1.RELEASE'
}

dependencyManagement {
  imports {
    mavenBom 'org.apache.logging.log4j:log4j-bom:2.13.1'
  }
}

dependencies {
  compile 'org.apache.logging.log4j:log4j-api'
  compile 'org.apache.logging.log4j:log4j-core'
  // etc.
}
</pre></div></div>
</section><section>
<h2><a name="Optional_Components"></a>Optional Components</h2>
<p>Log4j 2.x contains several optional components that can be included in an application.</p><section>
<h3><a name="Log4j_1.x_API_Bridge"></a>Log4j 1.x API Bridge</h3>
<p>If existing components use Log4j 1.x and you want to have this logging routed to Log4j 2, then remove any log4j 1.x dependencies and add the following.</p>
<p>pom.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency&gt;
    &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
    &lt;artifactId&gt;log4j-1.2-api&lt;/artifactId&gt;
    &lt;version&gt;2.13.1&lt;/version&gt;
  &lt;/dependency&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>ivy.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency org=&quot;org.apache.logging.log4j&quot; name=&quot;log4j-1.2-api&quot; rev=&quot;2.13.1&quot; /&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>build.gradle</p>

<div>
<div>
<pre class="source">dependencies {
  compile group: 'org.apache.logging.log4j', name: 'log4j-1.2-api', version: '2.13.1'
}
</pre></div></div>

<p>build.sbt</p>

<div>
<div>
<pre class="source">libraryDependencies += &quot;org.apache.logging.log4j&quot; % &quot;log4j-1.2-api&quot; % &quot;2.13.1&quot;
</pre></div></div>
</section><section>
<h3><a name="Apache_Commons_Logging_Bridge"></a>Apache Commons Logging Bridge</h3>
<p>If existing components use Apache Commons Logging 1.x and you want to have this logging routed to Log4j 2, then add the following but do not remove any Commons Logging 1.x dependencies.</p>
<p>pom.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency&gt;
    &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
    &lt;artifactId&gt;log4j-jcl&lt;/artifactId&gt;
    &lt;version&gt;2.13.1&lt;/version&gt;
  &lt;/dependency&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>ivy.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency org=&quot;org.apache.logging.log4j&quot; name=&quot;log4j-jcl&quot; rev=&quot;2.13.1&quot; /&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>build.gradle</p>

<div>
<div>
<pre class="source">dependencies {
  compile group: 'org.apache.logging.log4j', name: 'log4j-jcl', version: '2.13.1'
}
</pre></div></div>

<p>build.sbt</p>

<div>
<div>
<pre class="source">libraryDependencies += &quot;org.apache.logging.log4j&quot; % &quot;log4j-jcl&quot; % &quot;2.13.1&quot;
</pre></div></div>
</section><section>
<h3><a name="SLF4J_Bridge"></a>SLF4J Bridge</h3>
<p>If existing components use SLF4J and you want to have this logging routed to Log4j 2, then add the following but do not remove any SLF4J dependencies.</p>
<p>pom.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency&gt;
    &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
    &lt;artifactId&gt;log4j-slf4j-impl&lt;/artifactId&gt;
    &lt;version&gt;2.13.1&lt;/version&gt;
  &lt;/dependency&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>ivy.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency org=&quot;org.apache.logging.log4j&quot; name=&quot;log4j-slf4j-impl&quot; rev=&quot;2.13.1&quot; /&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>build.gradle</p>

<div>
<div>
<pre class="source">dependencies {
  compile group: 'org.apache.logging.log4j', name: 'log4j-slf4j-impl', version: '2.13.1'
}
</pre></div></div>

<p>build.sbt</p>

<div>
<div>
<pre class="source">libraryDependencies += &quot;org.apache.logging.log4j&quot; % &quot;log4j-slf4j-impl&quot; % &quot;2.13.1&quot;
</pre></div></div>
</section><section>
<h3><a name="JUL_Adapter"></a>JUL Adapter</h3>
<p>If existing components use Java Util Logging and you want to have this logging routed to Log4j 2, then add the following.</p>
<p>pom.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency&gt;
    &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
    &lt;artifactId&gt;log4j-jul&lt;/artifactId&gt;
    &lt;version&gt;2.13.1&lt;/version&gt;
  &lt;/dependency&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>ivy.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency org=&quot;org.apache.logging.log4j&quot; name=&quot;log4j-jul&quot; rev=&quot;2.13.1&quot; /&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>build.gradle</p>

<div>
<div>
<pre class="source">dependencies {
  compile group: 'org.apache.logging.log4j', name: 'log4j-jul', version: '2.13.1'
}
</pre></div></div>

<p>build.sbt</p>

<div>
<div>
<pre class="source">libraryDependencies += &quot;org.apache.logging.log4j&quot; % &quot;log4j-jul&quot; % &quot;2.13.1&quot;
</pre></div></div>
</section><section>
<h3><a name="Web_Servlet_Support"></a>Web Servlet Support</h3>
<p>In order to properly support and handle the ClassLoader environment and container lifecycle of a web application, an additional module is required. This module is only required at runtime. In addition, if you&#x2019;re using servlets in an OSGi environment, make sure your preferred version of the servlet API is already available (e.g., if you want to use 3.0, but you&#x2019;ve also got 2.5 loaded, make sure both are loaded).</p>
<p>pom.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency&gt;
    &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
    &lt;artifactId&gt;log4j-web&lt;/artifactId&gt;
    &lt;version&gt;2.13.1&lt;/version&gt;
  &lt;/dependency&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>ivy.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency org=&quot;org.apache.logging.log4j&quot; name=&quot;log4j-web&quot; rev=&quot;2.13.1&quot; /&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>build.gradle</p>

<div>
<div>
<pre class="source">dependencies {
  compile group: 'org.apache.logging.log4j', name: 'log4j-web', version: '2.13.1'
}
</pre></div></div>

<p>build.sbt</p>

<div>
<div>
<pre class="source">libraryDependencies += &quot;org.apache.logging.log4j&quot; % &quot;log4j-web&quot; % &quot;2.13.1&quot;
</pre></div></div>
</section><section>
<h3><a name="Tag_Library"></a>Tag Library</h3>
<p>The Log4j Log Tag Library creates the capability of inserting log statements in JSPs without the use of Java scripting. It uses the standard Log4j 2 API to log messages according to your Log4j configuration.</p>
<p>pom.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency&gt;
    &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
    &lt;artifactId&gt;log4j-taglib&lt;/artifactId&gt;
    &lt;version&gt;2.13.1&lt;/version&gt;
  &lt;/dependency&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>ivy.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency org=&quot;org.apache.logging.log4j&quot; name=&quot;log4j-taglib&quot; rev=&quot;2.13.1&quot; /&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>build.gradle</p>

<div>
<div>
<pre class="source">dependencies {
  compile group: 'org.apache.logging.log4j', name: 'log4j-taglib', version: '2.13.1'
}
</pre></div></div>

<p>build.sbt</p>

<div>
<div>
<pre class="source">libraryDependencies += &quot;org.apache.logging.log4j&quot; % &quot;log4j-taglib&quot; % &quot;2.13.1&quot;
</pre></div></div>
</section><section>
<h3><a name="Apache_Flume_Appender"></a>Apache Flume Appender</h3>
<p>The Flume Appender allows applications to send events to Flume Agents.</p>
<p>pom.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency&gt;
    &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
    &lt;artifactId&gt;log4j-flume-ng&lt;/artifactId&gt;
    &lt;version&gt;2.13.1&lt;/version&gt;
  &lt;/dependency&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>ivy.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency org=&quot;org.apache.logging.log4j&quot; name=&quot;log4j-flume-ng&quot; rev=&quot;2.13.1&quot; /&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>build.gradle</p>

<div>
<div>
<pre class="source">dependencies {
  compile group: 'org.apache.logging.log4j', name: 'log4j-flume-ng', version: '2.13.1'
}
</pre></div></div>

<p>build.sbt</p>

<div>
<div>
<pre class="source">libraryDependencies += &quot;org.apache.logging.log4j&quot; % &quot;log4j-flume-ng&quot; % &quot;2.13.1&quot;
</pre></div></div>
</section><section>
<h3><a name="Log4j_to_SLF4J_Adapter"></a>Log4j to SLF4J Adapter</h3>
<p>The Log4j 2 to SLF4J Adapter allows applications coded to the Log4j 2 API to be routed to SLF4J. Use of this adapter may cause some loss of performance as the Log4j 2 Messages must be formatted before they can be passed to SLF4J. The SLF4J Bridge must NOT be on the class path when this is in use.</p>
<p>pom.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency&gt;
    &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
    &lt;artifactId&gt;log4j-to-slf4j&lt;/artifactId&gt;
    &lt;version&gt;2.13.1&lt;/version&gt;
  &lt;/dependency&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>ivy.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency org=&quot;org.apache.logging.log4j&quot; name=&quot;log4j-to-slf4j&quot; rev=&quot;2.13.1&quot; /&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>build.gradle</p>

<div>
<div>
<pre class="source">dependencies {
  compile group: 'org.apache.logging.log4j', name: 'log4j-to-slf4j', version: '2.13.1'
}
</pre></div></div>

<p>build.sbt</p>

<div>
<div>
<pre class="source">libraryDependencies += &quot;org.apache.logging.log4j&quot; % &quot;log4j-to-slf4j&quot; % &quot;2.13.1&quot;
</pre></div></div>
</section><section>
<h3><a name="CouchDB"></a>CouchDB</h3>
<p>If your configuration uses the NoSQL CouchDB appender, then add the following.</p>
<p>pom.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency&gt;
    &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
    &lt;artifactId&gt;log4j-couchdb&lt;/artifactId&gt;
    &lt;version&gt;2.13.1&lt;/version&gt;
  &lt;/dependency&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>ivy.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency org=&quot;org.apache.logging.log4j&quot; name=&quot;log4j-couchdb&quot; rev=&quot;2.13.1&quot; /&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>build.gradle</p>

<div>
<div>
<pre class="source">dependencies {
  compile group: 'org.apache.logging.log4j', name: 'log4j-couchdb', version: '2.13.1'
}
</pre></div></div>

<p>build.sbt</p>

<div>
<div>
<pre class="source">libraryDependencies += &quot;org.apache.logging.log4j&quot; % &quot;log4j-couchdb&quot; % &quot;2.13.1&quot;
</pre></div></div>
</section><section>
<h3><a name="MongoDB"></a>MongoDB</h3>
<p>If your configuration uses the NoSQL MongoDB appender, then add the following.</p>
<p>pom.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency&gt;
    &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
    &lt;artifactId&gt;log4j-mongodb&lt;/artifactId&gt;
    &lt;version&gt;2.13.1&lt;/version&gt;
  &lt;/dependency&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>ivy.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency org=&quot;org.apache.logging.log4j&quot; name=&quot;log4j-mongodb&quot; rev=&quot;2.13.1&quot; /&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>build.gradle</p>

<div>
<div>
<pre class="source">dependencies {
  compile group: 'org.apache.logging.log4j', name: 'log4j-mongodb', version: '2.13.1'
}
</pre></div></div>

<p>build.sbt</p>

<div>
<div>
<pre class="source">libraryDependencies += &quot;org.apache.logging.log4j&quot; % &quot;log4j-mongodb&quot; % &quot;2.13.1&quot;
</pre></div></div>
</section><section>
<h3><a name="Cassandra"></a>Cassandra</h3>
<p>If your configuration uses the Cassandra appender, then add the following.</p>
<p>pom.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency&gt;
    &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
    &lt;artifactId&gt;log4j-cassandra&lt;/artifactId&gt;
    &lt;version&gt;2.13.1&lt;/version&gt;
  &lt;/dependency&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>ivy.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency org=&quot;org.apache.logging.log4j&quot; name=&quot;log4j-cassandra&quot; rev=&quot;2.13.1&quot; /&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>build.gradle</p>

<div>
<div>
<pre class="source">dependencies {
  compile group: 'org.apache.logging.log4j', name: 'log4j-cassandra', version: '2.13.1'
}
</pre></div></div>

<p>build.sbt</p>

<div>
<div>
<pre class="source">libraryDependencies += &quot;org.apache.logging.log4j&quot; % &quot;log4j-cassandra&quot; % &quot;2.13.1&quot;
</pre></div></div>
</section><section>
<h3><a name="IO_Streams"></a>IO Streams</h3>
<p>Log4j IO Streams allow applications to have data that is written to an OutputStream or a Writer be redirected to a Logger, or have data that is read from an InputStream or a Reader be wiretapped by a Logger. To use IO Streams, add the following.</p>
<p>pom.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency&gt;
    &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
    &lt;artifactId&gt;log4j-iostreams&lt;/artifactId&gt;
    &lt;version&gt;2.13.1&lt;/version&gt;
  &lt;/dependency&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>ivy.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency org=&quot;org.apache.logging.log4j&quot; name=&quot;log4j-iostreams&quot; rev=&quot;2.13.1&quot; /&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>build.gradle</p>

<div>
<div>
<pre class="source">dependencies {
  compile group: 'org.apache.logging.log4j', name: 'log4j-iostreams', version: '2.13.1'
}
</pre></div></div>

<p>build.sbt</p>

<div>
<div>
<pre class="source">libraryDependencies += &quot;org.apache.logging.log4j&quot; % &quot;log4j-iostreams&quot; % &quot;2.13.1&quot;
</pre></div></div>
</section><section>
<h3><a name="Scala_API"></a>Scala API</h3>
<p>A convenient Scala wrapper for the Logger API. SBT users can add the following to their build.sbt:</p>
<p>build.sbt</p>

<div>
<div>
<pre class="source">libraryDependencies += &quot;org.apache.logging.log4j&quot; %% &quot;log4j-api-scala&quot; % &quot;11.0&quot;
</pre></div></div>

<p>Maven, Ivy, and Gradle users need to add the Scala version to the artifact name.</p>
<p>Scala 2.12 users can use the following:</p>
<p>pom.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency&gt;
    &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
    &lt;artifactId&gt;log4j-api-scala_2.12&lt;/artifactId&gt;
    &lt;version&gt;11.0&lt;/version&gt;
  &lt;/dependency&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>ivy.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency org=&quot;org.apache.logging.log4j&quot; name=&quot;log4j-api-scala_2.12&quot; rev=&quot;11.0&quot; /&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>build.gradle</p>

<div>
<div>
<pre class="source">dependencies {
  compile group: 'org.apache.logging.log4j', name: 'log4j-api-scala_2.12', version: '11.0'
}
</pre></div></div>

<p>Scala 2.11 users can use the following:</p>
<p>pom.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency&gt;
    &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
    &lt;artifactId&gt;log4j-api-scala_2.11&lt;/artifactId&gt;
    &lt;version&gt;11.0&lt;/version&gt;
  &lt;/dependency&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>ivy.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency org=&quot;org.apache.logging.log4j&quot; name=&quot;log4j-api-scala_2.11&quot; rev=&quot;11.0&quot; /&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>build.gradle</p>

<div>
<div>
<pre class="source">dependencies {
  compile group: 'org.apache.logging.log4j', name: 'log4j-api-scala_2.11', version: '11.0'
}
</pre></div></div>

<p>Scala 2.10 users can use the following:</p>
<p>pom.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency&gt;
    &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;
    &lt;artifactId&gt;log4j-api-scala_2.10&lt;/artifactId&gt;
    &lt;version&gt;11.0&lt;/version&gt;
  &lt;/dependency&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>ivy.xml</p>

<div>
<div>
<pre class="source">&lt;dependencies&gt;
  &lt;dependency org=&quot;org.apache.logging.log4j&quot; name=&quot;log4j-api-scala_2.10&quot; rev=&quot;11.0&quot; /&gt;
&lt;/dependencies&gt;
</pre></div></div>

<p>build.gradle</p>

<div>
<div>
<pre class="source">dependencies {
  compile group: 'org.apache.logging.log4j', name: 'log4j-api-scala_2.10', version: '11.0'
}
</pre></div></div>
</section></section><section>
<h2><a name="Snapshot_builds"></a>Snapshot builds</h2>
<p>You can access the latest development snapshot by using the Maven repository https://repository.apache.org/snapshots and the current SNAPSHOT version. Generally, the master branch will use the next patch version as its snapshot version regardless of what the next actual version of Log4j will be. For example, if the latest release were 2.0, then master would be using the version 2.0.1-SNAPSHOT. Always verify with pom.xml in the master branch as described in the <a href="source-repository.html">source repository page</a>.</p><section>
<h3><a name="Maven"></a>Maven</h3>
<p>Maven users can add the following to their pom.xml to enable snapshots:</p>

<div>
<div>
<pre class="source">&lt;repositories&gt;
  &lt;repository&gt;
    &lt;id&gt;apache.snapshots&lt;/id&gt;
    &lt;name&gt;Apache Snapshot Repository&lt;/name&gt;
    &lt;url&gt;https://repository.apache.org/snapshots&lt;/url&gt;
    &lt;releases&gt;
      &lt;enabled&gt;false&lt;/enabled&gt;
    &lt;/releases&gt;
  &lt;/repository&gt;
&lt;/repositories&gt;
</pre></div></div>
</section><section>
<h3><a name="Gradle"></a>Gradle</h3>
<p>Gradle users can add the following to their build.gradle to enable snapshots:</p>

<div>
<div>
<pre class="source">repositories {
  mavenCentral()
  maven { url 'https://repository.apache.org/snapshots' }
}
</pre></div></div>
</section><section>
<h3><a name="SBT"></a>SBT</h3>
<p>SBT users can add the following to their build.sbt to enable snapshots:</p>

<div>
<div>
<pre class="source">resolvers += &quot;Apache Snapshot Repository&quot; at &quot;https://repository.apache.org/snapshots&quot;
</pre></div></div></section></section>
        </main>
      </div>
    </div>
    <hr/>
    <footer>
      <div class="container-fluid">
        <div class="row-fluid">
<p align="center">Copyright &copy; 1999-2020 <a class="external" href="http://www.apache.org">The Apache Software Foundation</a>. All Rights Reserved.<br>
      Apache Logging, Apache Log4j, Log4j, Apache, the Apache feather logo, and the Apache Logging project logo are trademarks of The Apache Software Foundation.</p>
        </div>
      </div>
    </footer>
  </body>
</html>
