我正在尝试让日志记录在我的 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/