log4j“桥”和RootLogger类

zbq4xfa0  于 2022-11-06  发布在  其他
关注(0)|答案(1)|浏览(189)

我们试图在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确实丢失了。
我该怎么处理这件事?

z8dt9xmd

z8dt9xmd1#

Log4j2的最新版本2.17.2包含了对Log4j 1.x桥的几十个修复(参见changelog)。
其中添加了org.apache.log4j.RootLogger类,以提供与Log4j 1.x的二进制兼容性。
警告:许多添加的类是无操作的,只是阻止了您问题中的ClassNotFoundException

相关问题