【问题标题】:Spring: "SimpleLogger does not seem to be location aware" exceptionSpring:“SimpleLogger 似乎没有位置感知”异常
【发布时间】:2010-09-11 10:03:37
【问题描述】:

我的第一行代码在 Spring 应用程序中遇到异常:

ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");

我已将 commons-logging-1.1.1.jar 配置为项目库。

这是堆栈跟踪:

java.lang.UnsupportedOperationException:记录器 [org.slf4j.impl.SimpleLogger(org.springframework.context.support.ClassPathXmlApplicationContext)] 似乎无法识别位置。

在 org.apache.log4j.Category.log(Category.java:347) 在 org.apache.commons.logging.impl.Log4JLogger.info(Log4JLogger.java:199) 在 org.springframework.context.support.AbstractApplicationContext.prepareRefresh(AbstractApplicationContext.java:456) 在 org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:394) 在 org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:139) 在 org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:83)

【问题讨论】:

    标签: spring log4j slf4j


    【解决方案1】:

    看起来您正在同时使用多个日志记录框架。此错误似乎是您的 SLF4J 和 Log4J 配置之间发生冲突的症状。

    看看这个帖子:
    http://www.qos.ch/pipermail/slf4j-user/2010-February/000892.html
    哪条规定,

    代码日志(String FQCN, Priority p, Object msg, Throwable t) 方法抛出 一个例外,因为调用者 期望位置感知日志记录,但 实际的记录器实现不是 能够提供“位置 意识”。

    如果没有更多信息,我最好的猜测是您引用了 slf4j jar,例如 slf4j-nop-1.6.1.jar 或其他通过指向 Logger 类的非操作实现来关闭日志记录的东西。

    找到罪魁祸首并删除它(或将其替换为 slf4j-log4j 版本)。

    你在使用 Maven 吗?

    如果是这样,请打开 pom 文件的依赖关系图并搜索名称中包含 slf4j 的所有依赖项。删除看起来像 NOOP jar 的那个。

    【讨论】:

    • 这是一个 Spring/Hibernate 项目,不知何故,我在项目中包含了版本化和非版本化的 slf4j-simple.jar 作为 Hibernate 配置的一部分。我删除了 slf4j-simple.jar,让 slf4j-simple-1.4.2.jar 与我正在使用的 Hibernate 发行版中的 slf4j-simple-api-1.4.2.jar 匹配。一切都很好。
    • 很高兴你把它整理出来。我想,我喜欢 SLF4J 背后的理论,但在实践中,它似乎会导致很多这样的问题。
    • 真正令人痛苦的是,当您使用的框架依赖于日志系统时,您会陷入其中。布莱奇。
    猜你喜欢
    • 2018-10-11
    • 2014-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-11
    • 2017-11-11
    • 1970-01-01
    相关资源
    最近更新 更多