Sto costruendo una piccola app Java e spero di utilizzare il logback per la registrazione.incompatibilità della struttura di registrazione
mia app ha una dipendenza su un progetto vecchio che fa il suo registrazione tramite
org.apache.commons | com.springsource.org.apache.commons.logging | 1.1.1
... quindi il mio piano era di usare
org.slf4j | jcl-over-slf4j | 1.5.6
... per reindirizzare il JCL per la registrazione
org.slf4j | slf4j-api | 1.6.0
... e in definitiva a
ch.qos.logback | logback-classic | 0.9.22
ch.qos.logback | logback-core | 0.9.22
così la mia applicazione può accedere attraverso logback attraverso la sua API slf4j mentre il vecchio codice della libreria può accedere nella stessa posizione tramite il reindirizzamento.
Ahimè, questo si traduce in
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)
Ho provato numeri verision superiori e inferiori su alcuni di questi vasi e anche scavando attraverso documentazione delle API e tale ... ma sono in grado di trovare e risolvere il problema.
Aiuto, per favore?
Anche se logback è considerato il quadro di registrazione "strategica", ho qualche margine di manovra in cui meccanismo di registrazione che in ultima analisi, lo uso. Spero di poter utilizzare logback o log4j, tuttavia, e voglio assolutamente unire la registrazione del vecchio progetto in qualunque sia il "nuovo" framework di registrazione, tramite una configurazione comune.
Ha funzionato subito, naturalmente; Grazie mille! Non avevo usato 1.6.1 di quei barattoli perché non sembravano essere disponibili. Sono molto seccato con m2eclipse, che pretende di mostrarmi tutte le versioni disponibili ma ne cade misteriosamente un numero significativo. –
Proprio per l'interesse di chiunque altro seguente: ho finito con una freccia rossa nel grafico delle dipendenze, perché anche l'ultima logback-core insiste sulla slf4j-1.6.0. Ci sono volute altre discussioni con le versioni fino a quando tutte le frecce rosse non sono scomparse, ma ora funziona sia con le frecce blu che tutte. –
Come esattamente lo faccio. – user1721803