Author: mattsicker
Date: Sun Apr  6 02:58:44 2014
New Revision: 1585236

URL: http://svn.apache.org/r1585236
Log:
Add documentation regarding annotation processor.

Modified:
    logging/log4j/log4j2/trunk/src/site/xdoc/manual/plugins.xml

Modified: logging/log4j/log4j2/trunk/src/site/xdoc/manual/plugins.xml
URL: 
http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/src/site/xdoc/manual/plugins.xml?rev=1585236&r1=1585235&r2=1585236&view=diff
==============================================================================
--- logging/log4j/log4j2/trunk/src/site/xdoc/manual/plugins.xml (original)
+++ logging/log4j/log4j2/trunk/src/site/xdoc/manual/plugins.xml Sun Apr  6 
02:58:44 2014
@@ -16,7 +16,9 @@
     limitations under the License.
 -->
 
-<document>
+<document xmlns="http://maven.apache.org/XDOC/2.0";
+          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+          xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 
http://maven.apache.org/xsd/xdoc-2.0.xsd";>
     <properties>
         <title>Log4j 2 Plugins</title>
         <author email="rgo...@apache.org">Ralph Goers</author>
@@ -91,10 +93,12 @@
         </subsection>
         <a name="KeyProviders"/>
         <subsection name="KeyProviders">
+          <p>
           Some components within Log4j may provide the ability to perform data 
encryption. These components require
           a secret key to perform the encryption. Applications may provide the 
key by creating a class that
           implements the <a 
href="../log4j-core/apidocs/org/apache/logging/log4j/core/helpers/SecretKeyProvider.html">SecretKeyProvider</a>
           interface.
+          </p>
         </subsection>
         <a name="Lookups"/>
         <subsection name="Lookups">
@@ -107,8 +111,10 @@
             key is the name of the item to locate.
           </p>
         </subsection>
-        <a name="Plugin Preloading"/>
+        <a name="PluginPreloading"/>
         <subsection name="Plugin Preloading">
+          <!-- FIXME: this documentation could probably be simplified quite a 
bit thanks to LOG4J2-595 -->
+          <p>
           Scanning for annotated classes dynamically takes a bit of time 
during application initialization. Log4j
           avoids this by scanning its classes during the build. In the Maven 
build, the PluginManager is invoked as
           shown below and then the resulting Map is stored in a file in the 
jar being constructed. Log4j will locate
@@ -116,6 +122,7 @@
           following plugin definition to your project's pom.xml will cause the 
plugin manager to be called during the
           build. It will store the resulting file in the correct location 
under the directory specified in the first
           argument after scanning all the components located under the package 
specified in the second argument.
+          </p>
           <pre class="prettyprint linenums"><![CDATA[<plugin>
   <groupId>org.codehaus.mojo</groupId>
   <artifactId>exec-maven-plugin</artifactId>
@@ -136,6 +143,26 @@
     </arguments>
   </Configuration>
 </plugin>]]></pre>
+          <h4>Using the Java annotation processor</h4>
+          <p>
+            Annotated classes marked with <code>@Plugin</code> or 
<code>@PluginAliases</code> are now automatically
+            preloaded when you include the log4j-core artifact, or more 
specifically, when you use the following
+            dependency:
+          </p>
+          <!-- FIXME: could this file be renamed to plugins.xml.vm to gain 
access to ${Log4jReleaseVersion} -->
+          <pre class="prettyprint linenums"><![CDATA[
+<dependencies>
+  <dependency>
+    <groupId>org.apache.logging.log4j</groupId>
+    <artifactId>log4j-plugin-processor</artifactId>
+    <version>2.0</version>
+  </dependency>
+</dependencies>
+          ]]></pre>
+          <p>
+            Note, however, that explicitly adding this dependency is 
unnecessary when you include log4j-core as it is
+            used by log4j-core.
+          </p>
         </subsection>
       </section>
     </body>


Reply via email to