log4j "bridge" 和 RootLogger class
log4j "bridge" and the RootLogger class
我们试图在 log4j "bridge".
的帮助下强制供应商提供的旧 Java 程序(JAR)使用 log4j2
为此,我:
- 已从供应商的 JAR
中删除所有以 org/apache/log4j/*
开头的条目
- 将
log4j-1.2-api-2.17.1.jar
和常规 log4j-*-2.17.1.jar
文件添加到 CLASSPATH
程序因找不到 org/apache/log4j/spi/RootLogger
而死。列出桥 JAR 的内容,我在 org/apache/log4j/spi/
下找到了几个 类,但是 RootLogger
确实丢失了。
我该如何处理?
Log4j2 的最新版本 2.17.2 包含对 Log4j 1.x 桥的几十个修复(参见 changelog)。
其中添加了 org.apache.log4j.RootLogger
class 以提供与 Log4j 的二进制兼容性 1.x。
警告:许多添加的 class 是 no-ops,只是防止 ClassNotFoundException
成为您问题中的那个。
我们试图在 log4j "bridge".
的帮助下强制供应商提供的旧 Java 程序(JAR)使用 log4j2为此,我:
- 已从供应商的 JAR 中删除所有以
- 将
log4j-1.2-api-2.17.1.jar
和常规log4j-*-2.17.1.jar
文件添加到 CLASSPATH
org/apache/log4j/*
开头的条目
程序因找不到 org/apache/log4j/spi/RootLogger
而死。列出桥 JAR 的内容,我在 org/apache/log4j/spi/
下找到了几个 类,但是 RootLogger
确实丢失了。
我该如何处理?
Log4j2 的最新版本 2.17.2 包含对 Log4j 1.x 桥的几十个修复(参见 changelog)。
其中添加了 org.apache.log4j.RootLogger
class 以提供与 Log4j 的二进制兼容性 1.x。
警告:许多添加的 class 是 no-ops,只是防止 ClassNotFoundException
成为您问题中的那个。