当我从Eclipse(Alt + Shift + X,T)中快速运行测试或从运行配置运行时,我正在努力让Eclipse识别我的日志记录配置。我真的不关心从测试本身进行日志记录,但实际上只是提供配置,以便执行的任何日志语句都不会失败。
Failed to instantiate [ch.qos.logback.classic.LoggerContext]
Reported exception:
java.lang.NoSuchMethodError: ch.qos.logback.core.util.Loader.getResourceOccurrenceCount(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/util/Set;
at ch.qos.logback.classic.util.ContextInitializer.multiplicityWarning(ContextInitializer.java:160)
at ch.qos.logback.classic.util.ContextInitializer.statusOnResourceSearch(ContextInitializer.java:183)
at ch.qos.logback.classic.util.ContextInitializer.getResource(ContextInitializer.java:141)
at ch.qos.logback.classic.util.ContextInitializer.findURLOfDefaultConfigurationFile(ContextInitializer.java:130)
at ch.qos.logback.classic.util.ContextInitializer.autoConfig(ContextInitializer.java:148)
at org.slf4j.impl.StaticLoggerBinder.init(StaticLoggerBinder.java:85)
at org.slf4j.impl.StaticLoggerBinder.<clinit>(StaticLoggerBinder.java:55)
at org.slf4j.LoggerFactory.bind(LoggerFactory.java:144)
at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:123)
at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:337)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:287)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:309)
我在src / test / resources中有logback-test.xml,并将其配置为具有target / test-classes输出的源文件夹。
我甚至为我的项目编辑了JUnit运行配置的类路径,并在那里添加了test-classes文件夹,但它没有帮助。
我缺少一些简单的东西吗?我似乎没有回忆过过去和其他项目有过这个问题。
答案 0 :(得分:11)
我检查了我的pom.xml,并且logback-classic没有指定的版本,而logback-core也没有。我为版本设置了一个属性,并将它们设置为相同。