log4j - 使用 Log4j Bridge 从 log4j1 迁移到 log4j2

标签 log4j log4j2

我开始将现有项目从 log4j1 迁移到 log4j2,我添加了以下 Maven 依赖项

     <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-1.2-api</artifactId>

    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-api</artifactId>

    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>

我还删除了所有 logj1 jar,就像他们在官方迁移指南上所说的那样,我不知道是否必须用 log4j2.xml 替换所有 log4j.xml 配置文件并将配置更改为新语法? 如果是这样,我如何与使用 log4j 的第三方合作并使用 log4j.xml 配置它?

最佳答案

首先,每个应用程序只能有一个日志配置。如果第三方在 jar 中提供日志配置以包含在您的应用程序中,那就是一个问题。如果它是一个单独的第三方应用程序,那么我不明白为什么你要将它从 Log4j 1 移植到 Log4j 2。这应该是他们的问题。

是的,您的依赖项是正确的。至于是使用 log4j 1 格式配置还是 log4j 2,如果您可以完成这项工作,我始终建议使用 log4j 2 格式。您当然可以按照 http://logging.apache.org/log4j/2.x/manual/compatibility.html 尝试使用 log4j 1 配置。 .

关于log4j - 使用 Log4j Bridge 从 log4j1 迁移到 log4j2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63964455/

相关文章:

java - 我怎样才能使 log4j fileAppender 正确转义 ${java.io.tmpdir} 的内容

java - 无法在 log4j 中将 MaxFileSize 设置为值 "100MB"

java - 使用 log4j2 的多线程的不同日志文件

java - weblogic加载hibernate的log4j2配置

java - 配置 Sentry 以使用 log4j2 进行日志记录时出错

java - logback的 "prudent mode"是怎么实现的?

java - 为什么我的Jnlp程序不能与log4j一起使用?

spring-boot - 将 LogStash Log4j 配置升级到 Log4j2

java - 为什么 Spring 不跟我说话? (或 : How do I correctly configure Spring logging? )

java - Log4j 2滚动文件的时间戳错误