META-INF.maven.org.apache.logging.log4j.log4j-core.pom.xml Maven / Gradle / Ivy
<?xml version="1.0" encoding="UTF-8"?> <!-- ~ 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. --> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j</artifactId> <version>2.12.4</version> <relativePath>../</relativePath> </parent> <artifactId>log4j-core</artifactId> <packaging>jar</packaging> <name>Apache Log4j Core</name> <description>The Apache Log4j Implementation</description> <properties> <log4jParentDir>${basedir}/..</log4jParentDir> <docLabel>Core Documentation</docLabel> <projectDir>/core</projectDir> <!--<revapi.skip>true</revapi.skip>--> </properties> <dependencies> <!-- Naturally, all implementations require the log4j-api JAR --> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> </dependency> <!-- Used for OSGi bundle support --> <dependency> <groupId>org.osgi</groupId> <artifactId>org.osgi.core</artifactId> <scope>provided</scope> </dependency> <!-- Required for AsyncLoggers --> <dependency> <groupId>com.lmax</groupId> <artifactId>disruptor</artifactId> <optional>true</optional> </dependency> <!-- Alternative implementation of BlockingQueue using Conversant Disruptor for AsyncAppender --> <dependency> <groupId>com.conversantmedia</groupId> <artifactId>disruptor</artifactId> <classifier>jdk7</classifier> <optional>true</optional> </dependency> <!-- Alternative implementation of BlockingQueue using JCTools for AsyncAppender --> <dependency> <groupId>org.jctools</groupId> <artifactId>jctools-core</artifactId> <optional>true</optional> </dependency> <!-- Required for JSON support --> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <optional>true</optional> </dependency> <!-- Required for JSON support --> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <optional>true</optional> </dependency> <!-- Required for YAML support (including JSON requirements) --> <dependency> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>jackson-dataformat-yaml</artifactId> <optional>true</optional> </dependency> <!-- Required for XML layout and receiver support --> <dependency> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>jackson-dataformat-xml</artifactId> <optional>true</optional> </dependency> <!-- POM for jackson-dataformat-xml 2.9.2 depends on woodstox-core 5.0.3 --> <dependency> <groupId>com.fasterxml.woodstox</groupId> <artifactId>woodstox-core</artifactId> <version>5.0.3</version> <optional>true</optional> </dependency> <!-- Required for console color support in Windows --> <dependency> <groupId>org.fusesource.jansi</groupId> <artifactId>jansi</artifactId> <optional>true</optional> </dependency> <!-- Required for SMTPAppender --> <dependency> <groupId>com.sun.mail</groupId> <artifactId>javax.mail</artifactId> <optional>true</optional> </dependency> <!-- Used for JMS appenders (needs an implementation of course) --> <dependency> <groupId>org.jboss.spec.javax.jms</groupId> <artifactId>jboss-jms-api_1.1_spec</artifactId> <scope>provided</scope> <optional>true</optional> </dependency> <!-- Used for Kafka appender --> <dependency> <groupId>org.apache.kafka</groupId> <artifactId>kafka-clients</artifactId> <optional>true</optional> </dependency> <!-- Used for ZeroMQ JeroMQ appender --> <dependency> <groupId>org.zeromq</groupId> <artifactId>jeromq</artifactId> <optional>true</optional> </dependency> <!-- Used for compressing to formats other than zip and gz --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-compress</artifactId> <optional>true</optional> </dependency> <!-- Used for the CSV layout --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-csv</artifactId> <optional>true</optional> </dependency> <!-- TEST DEPENDENCIES --> <!-- Pull in useful test classes from API --> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <type>test-jar</type> <scope>test</scope> </dependency> <!-- Apache Commons Compress --> <dependency> <groupId>org.tukaani</groupId> <artifactId>xz</artifactId> <scope>test</scope> </dependency> <!-- Zeroconf advertiser tests --> <dependency> <groupId>org.jmdns</groupId> <artifactId>jmdns</artifactId> <version>3.5.3</version> <scope>test</scope> </dependency> <!-- Log4j 1.2 tests --> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> <scope>test</scope> </dependency> <!-- SLF4J tests --> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-ext</artifactId> <scope>test</scope> </dependency> <!-- JUnit, naturally --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.hamcrest</groupId> <artifactId>hamcrest-all</artifactId> <scope>test</scope> </dependency> <!-- Mocking framework for use with JUnit --> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <scope>test</scope> </dependency> <!-- Embedded JDBC drivers for database appender tests --> <dependency> <groupId>org.hsqldb</groupId> <artifactId>hsqldb</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>test</scope> </dependency> <!-- Useful mock classes and utilities --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <scope>test</scope> </dependency> <!-- JNDI and JMS tests --> <dependency> <groupId>org.apache.activemq</groupId> <artifactId>activemq-broker</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.apache.geronimo.specs</groupId> <artifactId>geronimo-jms_1.1_spec</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <scope>test</scope> </dependency> <!-- Logback performance tests --> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-core</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <scope>test</scope> </dependency> <!-- OSGi tests --> <dependency> <groupId>org.eclipse.tycho</groupId> <artifactId>org.eclipse.osgi</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.apache.felix</groupId> <artifactId>org.apache.felix.framework</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.codehaus.plexus</groupId> <artifactId>plexus-utils</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.apache.maven</groupId> <artifactId>maven-core</artifactId> <scope>test</scope> </dependency> <!-- GELF --> <dependency> <groupId>net.javacrumbs.json-unit</groupId> <artifactId>json-unit</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.xmlunit</groupId> <artifactId>xmlunit-core</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.xmlunit</groupId> <artifactId>xmlunit-matchers</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <scope>test</scope> </dependency> <!-- Other --> <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.apache-extras.beanshell</groupId> <artifactId>bsh</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.codehaus.groovy</groupId> <artifactId>groovy-jsr223</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.codehaus.groovy</groupId> <artifactId>groovy-dateutil</artifactId> <scope>test</scope> </dependency> <!-- Used for testing HttpAppender --> <dependency> <groupId>com.github.tomakehurst</groupId> <artifactId>wiremock</artifactId> <scope>test</scope> </dependency> <!-- GC-free --> <dependency> <groupId>com.google.code.java-allocation-instrumenter</groupId> <artifactId>java-allocation-instrumenter</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.hdrhistogram</groupId> <artifactId>HdrHistogram</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <version>3.0.2</version> <executions> <execution> <id>unpack-classes</id> <phase>prepare-package</phase> <goals> <goal>unpack</goal> </goals> <configuration> <artifactItems> <artifactItem> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core-java9</artifactId> <version>${project.version}</version> <type>zip</type> <overWrite>false</overWrite> </artifactItem> </artifactItems> <includes>**/*.class</includes> <excludes>**/*.java</excludes> <outputDirectory>${project.build.directory}</outputDirectory> <overWriteReleases>false</overWriteReleases> <overWriteSnapshots>true</overWriteSnapshots> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>build-helper-maven-plugin</artifactId> <version>1.7</version> <executions> <execution> <id>add-source</id> <phase>generate-sources</phase> <goals> <goal>add-source</goal> </goals> <configuration> <sources> <source>${project.build.directory}/log4j-core-java9</source> </sources> </configuration> </execution> </executions> </plugin> <plugin> <artifactId>maven-compiler-plugin</artifactId> <executions> <execution> <!-- disable annotation processing for first pass --> <id>default-compile</id> <configuration> <excludes> <exclude>module-info.java</exclude> </excludes> <proc>none</proc> </configuration> </execution> <execution> <!-- then do a processing-only pass to generate plugins .dat file --> <id>process-plugins</id> <goals> <goal>compile</goal> </goals> <phase>process-classes</phase> <configuration> <excludes> <exclude>module-info.java</exclude> </excludes> <proc>only</proc> </configuration> </execution> </executions> </plugin> <plugin> <artifactId>maven-surefire-plugin</artifactId> <configuration> <excludedGroups> org.apache.logging.log4j.categories.PerformanceTests </excludedGroups> <systemPropertyVariables> <org.apache.activemq.SERIALIZABLE_PACKAGES>*</org.apache.activemq.SERIALIZABLE_PACKAGES> </systemPropertyVariables> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-failsafe-plugin</artifactId> <configuration> <skipTests>true</skipTests> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <executions> <execution> <id>default-jar</id> <goals> <goal>jar</goal> </goals> <configuration combine.self="override"> <archive> <manifestFile>${manifestfile}</manifestFile> <manifestEntries> <Specification-Title>${project.name}</Specification-Title> <Specification-Version>${project.version}</Specification-Version> <Specification-Vendor>${project.organization.name}</Specification-Vendor> <Implementation-Title>${project.name}</Implementation-Title> <Implementation-Version>${project.version}</Implementation-Version> <Implementation-Vendor>${project.organization.name}</Implementation-Vendor> <Implementation-Vendor-Id>org.apache</Implementation-Vendor-Id> <X-Compile-Source-JDK>${maven.compiler.source}</X-Compile-Source-JDK> <X-Compile-Target-JDK>${maven.compiler.target}</X-Compile-Target-JDK> <Automatic-Module-Name>org.apache.logging.log4j.core</Automatic-Module-Name> <Multi-Release>true</Multi-Release> </manifestEntries> </archive> </configuration> </execution> <execution> <id>default</id> <goals> <goal>test-jar</goal> </goals> <configuration> <archive> <manifestFile>${manifestfile}</manifestFile> <manifestEntries> <Specification-Title>${project.name}</Specification-Title> <Specification-Version>${project.version}</Specification-Version> <Specification-Vendor>${project.organization.name}</Specification-Vendor> <Implementation-Title>${project.name}</Implementation-Title> <Implementation-Version>${project.version}</Implementation-Version> <Implementation-Vendor>${project.organization.name}</Implementation-Vendor> <Implementation-Vendor-Id>org.apache</Implementation-Vendor-Id> <X-Compile-Source-JDK>${maven.compiler.source}</X-Compile-Source-JDK> <X-Compile-Target-JDK>${maven.compiler.target}</X-Compile-Target-JDK> </manifestEntries> </archive> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.felix</groupId> <artifactId>maven-bundle-plugin</artifactId> <configuration> <instructions> <Bundle-SymbolicName>org.apache.logging.log4j.core</Bundle-SymbolicName> <!-- TODO: exclude internal classes from export --> <Export-Package>org.apache.logging.log4j.core.*</Export-Package> <Import-Package> sun.reflect;resolution:=optional, * </Import-Package> <Bundle-Activator>org.apache.logging.log4j.core.osgi.Activator</Bundle-Activator> </instructions> </configuration> </plugin> </plugins> </build> <reporting> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-changes-plugin</artifactId> <version>${changes.plugin.version}</version> <reportSets> <reportSet> <reports> <report>changes-report</report> </reports> </reportSet> </reportSets> <configuration> <issueLinkTemplate>%URL%/show_bug.cgi?id=%ISSUE%</issueLinkTemplate> <useJql>true</useJql> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId> <version>${checkstyle.plugin.version}</version> <configuration> <!--<propertiesLocation>${vfs.parent.dir}/checkstyle.properties</propertiesLocation> --> <configLocation>${log4jParentDir}/checkstyle.xml</configLocation> <suppressionsLocation>${log4jParentDir}/checkstyle-suppressions.xml</suppressionsLocation> <enableRulesSummary>false</enableRulesSummary> <propertyExpansion>basedir=${basedir}</propertyExpansion> <propertyExpansion>licensedir=${log4jParentDir}/checkstyle-header.txt</propertyExpansion> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>${javadoc.plugin.version}</version> <configuration> <failOnError>false</failOnError> <bottom><![CDATA[<p align="center">Copyright © {inceptionYear}-{currentYear} {organizationName}. All Rights Reserved.<br /> Apache Logging, Apache Log4j, Log4j, Apache, the Apache feather logo, the Apache Logging project logo, and the Apache Log4j logo are trademarks of The Apache Software Foundation.</p>]]></bottom> <!-- module link generation is completely broken in the javadoc plugin for a multi-module non-aggregating project --> <detectOfflineLinks>false</detectOfflineLinks> <linksource>true</linksource> <links> <link>http://docs.oracle.com/javaee/6/api/</link> <link>http://www.osgi.org/javadoc/r4v43/core/</link> <link>https://commons.apache.org/proper/commons-lang/javadocs/api-release/</link> </links> <groups> <group> <title>Core API</title> <packages>org.apache.logging.log4j.core</packages> </group> <group> <title>Configuration</title> <packages>org.apache.logging.log4j.core.config*:org.apache.logging.log4j.core.selector</packages> </group> <group> <title>Core Plugins</title> <packages>org.apache.logging.log4j.core.appender*:org.apache.logging.log4j.core.filter:org.apache.logging.log4j.core.layout:org.apache.logging.log4j.core.lookup:org.apache.logging.log4j.core.pattern:org.apache.logging.log4j.core.script</packages> </group> <group> <title>Tools</title> <packages>org.apache.logging.log4j.core.net*:org.apache.logging.log4j.core.tools</packages> </group> <group> <title>Internals</title> <packages>org.apache.logging.log4j.core.async:org.apache.logging.log4j.core.impl:org.apache.logging.log4j.core.util*:org.apache.logging.log4j.core.osgi:org.apache.logging.log4j.core.jackson:org.apache.logging.log4j.core.jmx</packages> </group> </groups> </configuration> <reportSets> <reportSet> <id>non-aggregate</id> <reports> <report>javadoc</report> </reports> </reportSet> </reportSets> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>findbugs-maven-plugin</artifactId> <version>${findbugs.plugin.version}</version> <configuration> <fork>true</fork> <jvmArgs>-Duser.language=en</jvmArgs> <threshold>Normal</threshold> <effort>Default</effort> <excludeFilterFile>${log4jParentDir}/findbugs-exclude-filter.xml</excludeFilterFile> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jxr-plugin</artifactId> <version>${jxr.plugin.version}</version> <reportSets> <reportSet> <id>non-aggregate</id> <reports> <report>jxr</report> </reports> </reportSet> <reportSet> <id>aggregate</id> <reports> <report>aggregate</report> </reports> </reportSet> </reportSets> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-pmd-plugin</artifactId> <version>${pmd.plugin.version}</version> <configuration> <targetJdk>${maven.compiler.target}</targetJdk> </configuration> </plugin> </plugins> </reporting> </project>