【问题标题】:log4j with sl4j mvn dependency errorlog4j 与 sl4j maven 依赖错误
【发布时间】:2017-10-06 19:26:48
【问题描述】:

我有一个 mvn spark 项目,其中包含以下依赖项 jar(仅显示相关 jar)。

    mvn dependency:tree |grep slf4j
[INFO] |  +- org.slf4j:slf4j-log4j12:jar:1.7.2:compile
[INFO] +- org.slf4j:slf4j-api:jar:1.7.2:compile
[INFO] +- org.slf4j:jcl-over-slf4j:jar:1.7.2:runtime
[INFO] \- org.slf4j:jul-to-slf4j:jar:1.7.2:runtime

当我使用这段代码运行这个 mvn 项目时

SparkSession spark = SparkSession
                .builder()
                .appName("Test spark model file")
                .master("local")
                .getOrCreate();

我收到以下错误

Exception in thread "main" java.lang.StackOverflowError
    at java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:936)
    at org.slf4j.impl.JDK14LoggerFactory.getLogger(JDK14LoggerFactory.java:59)
    at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:277)
    at org.slf4j.bridge.SLF4JBridgeHandler.getSLF4JLogger(SLF4JBridgeHandler.java:204)
    at org.slf4j.bridge.SLF4JBridgeHandler.publish(SLF4JBridgeHandler.java:289)
    at java.util.logging.Logger.log(Logger.java:738)
    at org.slf4j.impl.JDK14LoggerAdapter.log(JDK14LoggerAdapter.java:579)
    at org.slf4j.impl.JDK14LoggerAdapter.log(JDK14LoggerAdapter.java:651)
    at org.slf4j.bridge.SLF4JBridgeHandler.callLocationAwareLogger(SLF4JBridgeHandler.java:224)
    at org.slf4j.bridge.SLF4JBridgeHandler.publish(SLF4JBridgeHandler.java:299)
    at java.util.logging.Logger.log(Logger.java:738)
    at org.slf4j.impl.JDK14LoggerAdapter.log(JDK14LoggerAdapter.java:579)
    at org.slf4j.impl.JDK14LoggerAdapter.log(JDK14LoggerAdapter.java:651)...

我看到了这个Using log4j2 with slf4j 与我的错误有关,但似乎没有帮助

【问题讨论】:

  • 你能提供你的pom的内容吗?另外,您对其他帖子采取了哪些措施?这两个错误似乎确实相关。

标签: java maven apache-spark logging slf4j


【解决方案1】:

通过栈,可以看到有一个slf4j/jdk14logger bridges的循环。

JDK14LoggerAdapter 将 slf4j 记录器桥接到 jdk14logger,然后 SLF4JBridgeHandler 做相反的事情。所以它会导致一个循环,然后会导致stackoverflow错误。

您可以通过删除这两个罐子之一来解决它。

【讨论】:

    猜你喜欢
    • 2011-01-19
    • 2020-04-14
    • 2020-06-29
    • 1970-01-01
    • 2013-10-01
    • 1970-01-01
    • 2019-09-02
    • 2023-03-31
    • 1970-01-01
    相关资源
    最近更新 更多