Ich baue eine kleine Java-App und hoffe, Logback für die Protokollierung verwenden zu können.
Meine App ist von einem älteren Projekt abhängig, über das die Protokollierung erfolgt
org.apache.commons | com.springsource.org.apache.commons.logging | 1.1.1
... also war mein Plan zu verwenden
org.slf4j | jcl-over-slf4j | 1.5.6
... um die JCL-Protokollierung umzuleiten
org.slf4j | slf4j-api | 1.6.0
... und letztendlich zu
ch.qos.logback | logback-classic | 0.9.22
ch.qos.logback | logback-core | 0.9.22
So kann sich meine App über die slf4j-API per Logback anmelden, während sich der alte Bibliothekscode über die Umleitung am selben Speicherort anmelden kann.
Leider führt dies zu
java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log(Lorg/slf4j/Marker;Ljava/lang/String;ILjava/lang/String;Ljava/lang/Throwable;)V
at org.apache.commons.logging.impl.SLF4JLocationAwareLog.info(SLF4JLocationAwareLog.java:141)
Ich habe versucht, bei einigen dieser Gläser höhere und niedrigere Verifizierungszahlen zu ermitteln und auch die API-Dokumentation und dergleichen zu durchsuchen ... aber ich kann das Problem nicht finden und lösen.
Hilfe bitte?
Obwohl Logback als "strategisches" Protokollierungsframework angesehen wird, habe ich einen gewissen Spielraum für den Protokollierungsmechanismus, den ich letztendlich verwende. Ich hoffe jedoch, entweder logback oder log4j verwenden zu können, und ich möchte auf jeden Fall die Protokollierung des alten Projekts über eine gemeinsame Konfiguration mit dem "neuen" Protokollierungsframework zusammenführen.