java.lang.Ошибка метода поиска: org.slf4j.spi.LocationAwareLogger.выбрасывается журнал без конфликта версий

#spring #junit #log4j #pom.xml #slf4j

#весна #junit #log4j #pom.xml #slf4j

Вопрос:

Я видел другие вопросы, касающиеся той же ошибки, и ни одно из решений не сработало для меня. Я просмотрел иерархию зависимостей, и конфликта версий не было.

У меня есть тест JUnit 4. При запуске теста я получаю следующую ошибку

 java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log(Lorg/slf4j/Marker;Ljava/lang/String;ILjava/lang/String;[Ljava/lang/Object;Ljava/lang/Throwable;)V
at org.apache.commons.logging.LogAdapter$Slf4jLocationAwareLog.error(LogAdapter.java:433)
  

Следующие зависимости были добавлены в pom.xml:

     <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>1.5.11</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>1.5.11</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.13</version>
            <scope>provided</scope>
    </dependency
  

Версия Sping: 5.2.6
Junit: 4

Есть идеи, что могло пойти не так?

Комментарии:

1. Вы используете слишком старую версию slf4j. Используйте что-нибудь в диапазоне 1.7.

2. @M.Deinum Я добавил 1.7.0. По-прежнему безуспешно. На самом деле я получаю эту ошибку в консоли: SLF4J: The requested version 1.6.99 by your slf4j binding is not compatible with [1.5.5, 1.5.6, 1.5.7, 1.5.8] я также получил эту ошибку при использовании версии 1.5.11.

3. В соответствии с ошибкой я добавил slf4j из 1.5.8 . Итак, эта ошибка решена, но LocationAwareLogger все еще существует

4. Вы не должны обновлять только API, но и обе версии.

5. @M.Denium Да, я обновил как slf4j-api, так и slf4j-log4j12