我有一个要登录的Maven&Spring应用程序。我热衷于使用SLF4J。
我想将所有配置文件放入包含log4j.xml的目录{classpath} / config中,然后使用spring bean进行初始化。
例如
<bean id="log4jInitialization" class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
<property name="targetClass" value="org.springframework.util.Log4jConfigurer"/>
<property name="targetMethod" value="initLogging"/>
<property name="arguments">
<list>
<value>classpath:config/log4j.xml</value>
</list>
</property>
</bean>
但是,我得到此警告,没有日志记录。
log4j:WARN找不到记录器的附加程序(org.springframework.context.support.ClassPathXmlApplicationContext)。log4j:WARN请正确初始化log4j系统。log4j:WARN有关更多信息,请参见http://logging.apache.org/log4j/1.2/faq.html#noconfig。
我到处搜索,找不到关于此设置的简单示例。有任何想法吗?
除了Jatin的答案:
Spring使用Jakarta Commons Logging作为日志记录API。为了登录到slf4j,您需要确保commons- logging
不在classpath上。jcl-over-slf4j
是公共记录的替代罐。
如果您使用的是maven,则可以mvn dependency:tree
使用依赖项排除功能来检测commons-
logging的使用来源,并将其从需要它的所有依赖项中排除。mvn dependency:tree
但是,您可能需要运行几次,因为它仅显示了传递依赖项的首次出现。
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${org.springframework.version}</version>
<exclusions>
<exclusion>
<artifactId>commons-logging</artifactId>
<groupId>commons-logging</groupId>
</exclusion>
</exclusions>
</dependency>
Hibernate 3. x使用slf4j进行日志记录。Hibernate 4. x使用jboss日志记录。我正在编写一个使用Hibernate 4和SLF4J进行日志记录的独立应用程序。 如何配置Hibernate以登录到SLF4J? 如果这不可能,我如何配置Hibernate的日志记录? Hibernate 4.1关于日志记录的手动部分以警告开始,它是。。。 完全过时了。Hibernate从4
问题内容: 我已经将一个Web应用程序部署到服务器上。我的应用程序使用和。但是,并非所有日志记录消息都已写入文件。 在我的课堂上,我有: 我的文件在本地计算机上运行良好,并且已正确部署。 我看到正在写入的应用程序生成的错误消息没有写入我的。由于输出模式的格式与我的模式不同,因此看起来的日志消息来自其他日志框架。我在中看到的日志记录如下: 我的log4j模式是这样的: 一些日志记录出现在我的文件日志
问题内容: 许多人不确定如何将Liquibase的日志记录修复到控制台或文件中。 是否可以将liquibase日志记录到slf4j? 问题答案: 有,但是有点模糊。使用SLF4J和Log4J引用修复的liquibase日志记录: 有 简单的方法 ,通过在依赖下降: 现在,前两个是您的日常日志记录框架(slf4j api和log4j实现)。这些是您对标准log4j依赖项的补充,因为它们所做的只是路由
我在具有以下logback.xml文件的类路径中有slf4j和logback jar(该文件以前已经成功使用过)。但是,DOCX4J3.0仍然将日志记录信息打印到标准输出。我正在使用NetBeans7.4构建基于docx4j的应用程序。我想将日志级别更改为错误,并将其发送到日志文件中。不知道我错过了什么。任何帮助都是非常感谢的。
在我的项目中,我使用slf4j+log4j进行日志记录。我刚接触java,正在尝试了解日志记录是如何工作的。如果我想使用log4j以外的其他日志框架,比如java.util.logging,那么我就不需要更改任何代码,因为我使用的是SLF4J。我只需要移除log4j的jar,并添加java.util.logging的二进制。我试着了解当我们不改变任何代码时,它是如何工作的。如果问题不清楚,请让我知
目前,我正在与 log4j2.7 springframework 4.3。5; 冬眠5.2。三, 我通过一个xml文件配置log4j 为此,我创建了一些appender,其中一个名为“General”。我需要的是,所有日志都必须转到该appender(包括springframework或hibernate生成的日志),并且后者都不会打印在控制台上(我仍然需要其他类中的其他日志) 我试着写这些日志: