java - Log4j slf4j 不工作

标签 java logging log4j apache-camel slf4j

我正在尝试让日志记录在我的 Apache Camel 项目中工作。 我尝试了以下方法:

虚拟机参数 在 Eclipse 中,我添加了尝试以下 VM args: -Dlog4j.configuration=log4j-/resources/log4j.properties -Dlog4j.debug=true

类路径上的属性文件 我仔细检查了 log4j.properties 是否在类路径上

我的 java 看起来像这样:

Logger LOG = LoggerFactory.getLogger(CamelMain.class);
LOG.info("starting");

我的 pom 包含以下内容:

<dependency>
          <groupId>org.apache.camel</groupId>
          <artifactId>camel-core</artifactId>
          <version>2.14.1</version>
        </dependency>
        <dependency>
          <groupId>org.apache.camel</groupId>
          <artifactId>camel-beanio</artifactId>
          <version>2.14.1</version>
        </dependency>
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.2</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.6.1</version>
        </dependency>       
         <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-api</artifactId>
            <version>2.2</version>
          </dependency>
          <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>2.2</version>
          </dependency>

知道为什么日志记录不起作用吗?

更新/解决方案

我需要添加以下内容:

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-log4j12</artifactId>
    <version>1.6.1</version>
</dependency>

最佳答案

如果你想在 log4j 上使用 slf4j 并删除 org.apache.logging.log4j 的依赖项,请添加以下依赖项>公共(public)日志记录

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.6.1</version>
</dependency>
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-log4j12</artifactId>
    <version>1.6.1</version>
</dependency>

关于java - Log4j slf4j 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28895534/

相关文章:

c - 1. 将 N 秒捕获的数据包保存到一个 pcap 文件中 & 2. 从 Wireshark 中的程序打印输出

c++ - 堵塞的意义何在?

java - 一个 log4j.xml - 许多脚本

xml - log4j:WARN 文档根元素 "log4j:configuration",必须匹配 DOCTYPE 根 "null"

java - 如何在 log4j2 中每次服务器关闭时轮换日志

java - 图形绘制到窗口后的 "secret"是什么?

java - 刽子手 : Remember Previous Guesses

java - 在 REST 调用上使 Java 服务器保持 DCOM 对象处于 Activity 状态

java - 用 char1 切换

java - 正则表达式:用括号分割忽略嵌套括号