<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!--
 | (Unfortunately) copied from the Fluido skin to allow the footer to be centered.
-->
<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" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>
		Releases</title>
    <link rel="stylesheet" href="./css/apache-maven-fluido.min.css" />
    <link rel="stylesheet" href="./css/site.css" />
    <link rel="stylesheet" href="./css/print.css" media="print" />

        
    <script type="text/javascript" src="./js/apache-maven-fluido.min.js"></script>

    
                    <meta name="Date-Revision-yyyymmdd" content="20120729" />
                <meta http-equiv="Content-Language" content="en" />
                </head>
        <body class="topBarDisabled">
            
                
                    
    
        <div class="container-fluid">
        <div id="banner">
        <div class="pull-left">
                                                                                        <a href="../../" id="bannerLeft">
                                                                                                                                                        <img src="images/ls-logo.jpg"  alt="Apache Logging Services™"/>
                            </a>
                                </div>
        <div class="pull-right">                    <div id="bannerRight">
                                                                                                                                                        <img src="images/logo.jpg" />
                            </div>
            </div>
        <div class="clear"><hr/></div>
    </div>

    <div id="breadcrumbs">
        <ul class="breadcrumb">
                        
                        
                            <li id="publishDate">Last Published: 2012-07-29</li>
                        <li class="divider">|</li> <li id="projectVersion">Version: 2.0-alpha1</li>
                                    
                        
                        
            
                                                        
    <li class="pull-right">                        <a href="../../" title="Logging Services">Logging Services</a>
    </li>

                <li class="divider pull-right">|</li>
            
    <li class="pull-right">                        <a href="http://www.apache.org/" class="externalLink" title="Apache">Apache</a>
    </li>

                <li class="divider pull-right">|</li>
            
    <li class="pull-right">                        <a href="http://wiki.apache.org/logging" class="externalLink" title="Logging Wiki">Logging Wiki</a>
    </li>

                                </ul>
    </div>

        <div class="row-fluid">
        <div id="leftColumn" class="span2">
            <div class="well sidebar-nav">
                            
                        
                                                                                    <h3>Apache Log4j™ 2</h3>
                                                    <ul>
                        <li class="none">
                                                <a href="index.html" title="About">About</a>
                    </li>
                  <li class="none">
                                                <a href="download.html" title="Download">Download</a>
                    </li>
                  <li class="none">
                                                <a href="build.html" title="Build and Install">Build and Install</a>
                    </li>
                  <li class="none">
                        <strong>Changelog</strong>
                </li>
              </ul>
                                                                <h3>Manual</h3>
                                                    <ul>
                        <li class="none">
                                                <a href="manual/index.html" title="Introduction">Introduction</a>
                    </li>
                  <li class="none">
                                                <a href="manual/architecture.html" title="Architecture">Architecture</a>
                    </li>
                                                                                                                                                                                                                                                                                                                                                                                                              <li class="collapsed">
                                                <a href="manual/api.html" title="API">API</a>
                                </li>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                  <li class="collapsed">
                                                <a href="manual/configuration.html" title="Configuration">Configuration</a>
                                </li>
                                                                                                                                                                                                                                                  <li class="collapsed">
                                                <a href="manual/plugins.html" title="Plugins">Plugins</a>
                                </li>
                                                                                                                                                                                                                                                                                                                                                                                                              <li class="collapsed">
                                                <a href="manual/lookups.html" title="Lookups">Lookups</a>
                                </li>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      <li class="collapsed">
                                                <a href="manual/appenders.html" title="Appenders">Appenders</a>
                                </li>
                                                                                                                                                                                                                                                                                                                                                                                                              <li class="collapsed">
                                                <a href="manual/layouts.html" title="Layouts">Layouts</a>
                                </li>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              <li class="collapsed">
                                                <a href="manual/filters.html" title="Filters">Filters</a>
                                </li>
                  <li class="none">
                                                <a href="manual/jmx.html" title="JMX">JMX</a>
                    </li>
                  <li class="none">
                                                <a href="manual/logsep.html" title="Logging Separation">Logging Separation</a>
                    </li>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              <li class="collapsed">
                                                <a href="manual/extending.html" title="Extending Log4j">Extending Log4j</a>
                                </li>
              </ul>
                                                                <h3>Logging Adapters</h3>
                                                    <ul>
                        <li class="none">
                                                <a href="log4j12-api/api.html" title="Log4j 1.x API">Log4j 1.x API</a>
                    </li>
                  <li class="none">
                                                <a href="log4j2-jcl/api.html" title="Commons Logging">Commons Logging</a>
                    </li>
                  <li class="none">
                                                <a href="slf4j-impl/api.html" title="SLF4J">SLF4J</a>
                    </li>
              </ul>
                                                                <h3>Components</h3>
                                                    <ul>
                        <li class="none">
                                                <a href="log4j-api/index.html" title="API">API</a>
                    </li>
                  <li class="none">
                                                <a href="log4j-core/index.html" title="Impl">Impl</a>
                    </li>
                  <li class="none">
                                                <a href="log4j12-api/index.html" title="Log4J 1.2 API">Log4J 1.2 API</a>
                    </li>
                  <li class="none">
                                                <a href="log4j-jcl/index.html" title="Commons Logging Bridge">Commons Logging Bridge</a>
                    </li>
                  <li class="none">
                                                <a href="slf4j-impl/index.html" title="SLF4J Binding">SLF4J Binding</a>
                    </li>
                  <li class="none">
                                                <a href="log4j-flume-ng/index.html" title="Apache Flume">Apache Flume</a>
                    </li>
              </ul>
                                                                                                        <h3>Site Documentation</h3>
                                                    <ul>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <li class="collapsed">
                                                <a href="project-info.html" title="Project Information">Project Information</a>
                                </li>
                                                                                                                                                                                                                                                                                                      <li class="collapsed">
                                                <a href="project-reports.html" title="Project Reports">Project Reports</a>
                                </li>
              </ul>
                                        
                        
                            
                <hr class="divider" />

                <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="poweredBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
        </a>
                            </div>
            </div>
        </div>
    
    <div id="bodyColumn"  class="span10" >
                                
            <!-- 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. -->

	
		<div class="section"><h2>Releases<a name="Releases"></a></h2>

			
				
			<ul><li><a href="#Apache_Log4j_2">Apache Log4j 2</a></li></ul>

			<a name="Apache_Log4j_2"></a><div class="section"><h3 id="Apache_Log4j 2">Apache Log4j 2</h3>

				<p>Release date: 2012-07-29</p>
				<p><a href="jira-report.html#a1.0-alpha1">JIRA change log</a></p>
        <p><a href="changes-report.html#a1.0-alpha1">Manual change log</a></p>

				<p>Apache Log4j 2 is not compatible with the previous versions. Please have the following in mind
				when upgrading to Log4j 2 in your project:</p>

				<ul>
					<li>Java 5 is required</li>
          <li>The XML configuration has been simplified and is not compatible with Log4j 1.x</li>
          <li>Configuration via property files is not supported.</li>
          <li>Configuration via JSON is supported.</li>
          <li>Although Log4j 2 is not directly compatible with Log4j 1.x and compatibility bridge
            has been provided to reduce the need to make coding changes.</li>
				</ul>
			</div>

		</div>
	

            </div>
        </div>
    
    <hr/>

    <footer>
                <div class="container-fluid">
                <div class="row footer">Copyright &copy; 1999-2012 <a href="http://www.apache.org">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.</div>
        </div>
    </footer>
</body>
</html>