Log4j 运行时依赖项

一些 Log4J 功能取决于外部库。此页面列出了必需和可选的依赖项。

从 2.10.0 版开始,Log4j API 是 Java 模块(带有 module-info.java)。其他许多 jar 都是自动模块。这些模块的 Feature 是:

Artifact Name Module Name Module Characteristics
log4j-api org.apache.logging.log4j 模块指令 注意事项

Exportorg.apache.logging.log4j
Exportorg.apache.logging.log4j.message
Exportorg.apache.logging.log4j.simple
Exportorg.apache.logging.log4j.spi
Exportorg.apache.logging.log4j.spi
Exportorg.apache.logging.log4j.util 此包中的某些类由日志记录实现使用,应视为私有。将来可能会修改模块信息定义,以仅将其导出到日志记录实现中。
使用 org.apache.logging.log4j.spi.Provider 日志记录实现必须提供的服务。
log4j-appserver org.apache.logging.log4j.appserver Automatic Module
log4j-cassandra org.apache.logging.log4j.cassandra Automatic Module
log4j-core org.apache.logging.log4j.core Automatic Module
log4j-couchdb org.apache.logging.log4j.couchdb Automatic Module
log4j-docker org.apache.logging.log4j.docker Automatic Module
log4j-1.2-api org.apache.log4j Automatic Module
log4j-flume-ng org.apache.logging.log4j.flume Automatic Module
log4j-iostreams org.apache.logging.log4j.iostreams Automatic Module
log4j-jcl org.apache.logging.log4j.jcl Automatic Module
log4j-jmx-gui org.apache.logging.log4j.jmx.gui Automatic Module
log4j-jul org.apache.logging.log4j.jul Automatic Module
log4j-mongodb org.apache.logging.log4j.mongodb Automatic Module
log4j-osgi org.apache.logging.log4j.osgi 自动模块。尚不清楚 OSGi 如何支持 Java 模块。
log4j-slf4j-impl org.apache.logging.log4j.slf4j.impl 自动模块。如果 SLF4J 要求所有实现都具有相同的模块名称,则可能需要重命名。
log4j-taglib org.apache.logging.log4j.taglib Automatic Module
log4j-to-slf4j org.apache.logging.log4j.slf4j Automatic Module
log4j-web org.apache.logging.log4j.web Automatic Module

从 2.9.1 版本开始,Log4j 支持 Java 9,但仍将在 Java 7 或 8 中运行。在此版本中,log4j-api 被打包为多版本 jar,并支持使用 StackWalker 和 Process API。

从 2.4 版开始,Log4J 需要 Java 7.

Log4j 2.3 和更早版本需要 Java 6.

log4j-api

Log4J API模块没有外部依赖性。

log4j-core

Log4J Implementation具有几个可选的dependencies。有关这些功能所需的 JAR 文件的确切列表,请参见Dependency Tree

Feature Requirements
XML configuration -
Properties configuration -
JSON configuration Jackson 核心和数据绑定
YAML configuration Jackson databindYAML 数据格式
CSV Layout Apache Commons CSV
JSON Layout Jackson 核心和数据绑定
XML Layout Jackson 核心,数据绑定和数据格式 XML

And com.fasterxml.woodstox:woodstox-core:5.0.2
YAML 布局 Jackson 核心,数据绑定YAML 数据格式
Async Loggers LMAX Disruptor
Kafka Appender KafkaClient 端库。请注意,您需要使用与所使用的 Kafka 服务器匹配的 KafkaClient 端库版本。
SMTP Appender javax.mail 的实现
JMS Appender Apache ActiveMQ这样的 JMS 代理
Windows 控制台颜色支持 Jansi
JDBC Appender 用于您选择向其中写入事件的数据库的 JDBC 驱动程序
JPA Appender Java 持久性 API 类,JPA 提供程序实现和用户实现的修饰实体。它还需要适当的 JDBC 驱动程序。
带有 MongoDB 提供程序的 NoSQL Appender MongoDB JavaClient 端驱动程序和 Log4j MongoDB 库
带有 Apache CouchDB 提供程序的 NoSQL Appender LightCouch CouchDBClient 端库和 Log4j CouchDB 库
Cassandra Appender Datastax Cassandra 驱动程序和 Log4j Cassandra 库
翻转时的 Bzip2,放气,Pack200 和 XZ 压缩 Apache Commons Compress。另外,XZ 需要XZ for Java
ZeroMQ Appender ZeroMQ 附加程序使用JeroMQ库,该库已根据 Mozilla 公共许可证版本 2.0(MPLv2)的条款获得许可。有关详细信息,请参见 JeroMQ 发行版随附的文件LICENSE

log4j-docker

Log4j Docker 支持要求Jackson 注解,核心和数据绑定。有关所需的 JAR 文件的确切列表,请参见Dependency Tree

log4j-jcl

公用伐木 bridge要求Commons Logging。有关所需的 JAR 文件的确切列表,请参见Dependency Tree

log4j-1.2-api

Log4j 1.2bridge没有外部依赖项。这仅需要 Log4j API。包括 Log4j Core 在内,它提供了可选的附加功能。

log4j-slf4j-impl

Log4j 2 SLF4J Binding取决于SLF4J API。有关所需的 JAR 文件的确切列表,请参见Dependency Tree

请勿与log4j-to-slf4j模块一起使用.

log4j-jul

Log4j 2 Java Util 日志记录适配器没有外部依赖性。根据需要,它取决于Log4j Core库。唯一需要的模块是 Log4j API。

log4j-to-slf4j

Log4j 2 到 SLF4J 适配器需要SLF4J API 和 SLF4J 实现。有关所需的 JAR 文件的确切列表,请参见Dependency Tree

请勿与log4j-slf4j-impl模块一起使用.

log4j-flume-ng

Flume Appender要求Apache FlumeApache Avro。持久代理使用 Berkeley DB。有关所需的 JAR 文件的确切列表,请参见Dependency Tree

log4j-spring-cloud-config-client

Log4j Spring Cloud ConfigClient 端要求Spring Cloud Config。如果需要通知日志记录配置更改,则需要Spring Cloud 巴士Spring Boot是必需的,但应用程序不必打包为 Spring Boot 应用程序。 Dependency Tree以获得所需的 JAR 文件的确切列表。

log4j-taglib

Log4j 日志标签库需要雅加达公共日志标签库和 Servlet API。有关所需的 JAR 文件的确切列表,请参见Dependency Tree

log4j-jmx-gui

作为 JConsole 插件运行时,Log4j JMX GUI需要 JConsole jar。否则,它没有外部依赖性。有关所需的 JAR 文件的确切列表,请参见Dependency Tree

log4j-web

Log4j Web模块需要 Servlet API。有关所需的 JAR 文件的确切列表,请参见Dependency Tree。请注意,这可与 Servlet 2.5 API 和 Servlet 3.x API 一起使用。

log4j-couchdb

Log4J CouchDB模块取决于LightCouch CouchDBClient 端库。

log4j-mongodb

Log4J MongoDB模块取决于MongoDB JavaClient 端驱动程序

log4j-cassandra

Log4J Cassandra模块取决于Datastax Cassandra 驱动程序

log4j-iostreams

Log4j IO Streams模块没有外部依赖性。这仅需要 Log4j API。

log4j-api-scala

Log4j Scala API除了 Log4j API 外,还需要 Scala 运行时库和反射。

首页