Buduję małą aplikację Java i mam nadzieję, że użyję funkcji logowania do rejestrowania.Niezgodność w zakresie rejestrowania w logach
Moja aplikacja ma zależność od starszego projektu, który dokłada wszelkich rejestrowanie poprzez
org.apache.commons | com.springsource.org.apache.commons.logging | 1.1.1
... więc mój plan był do korzystania
org.slf4j | jcl-over-slf4j | 1.5.6
... aby przekierować JCL zalogowaniu do
org.slf4j | slf4j-api | 1.6.0
... i ostatecznie
ch.qos.logback | logback-classic | 0.9.22
ch.qos.logback | logback-core | 0.9.22
dzięki czemu moja aplikacja może logować się poprzez funkcję logback za pośrednictwem swojego slf4j API, podczas gdy stary kod biblioteki może zalogować się do tej samej lokalizacji przez przekierowanie.
Niestety, powoduje to
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)
Próbowałem wyższe i niższe numery verision na niektóre z tych słoików, a także poprzez kopanie dokumentacji API i takie tam ... ale jestem w stanie znaleźć i rozwiązać problem.
Pomoc, proszę?
Mimo że logback jest uważany za "strategiczny" framework rejestrowania, mam pewne pole manewru, w którym ostatecznie korzystam z mechanizmu logowania. Mam jednak nadzieję, że użyję logback lub log4j i zdecydowanie chcę połączyć logowanie starego projektu z tym, co "nowy" szkielet logowania kończy się, za pośrednictwem wspólnej konfiguracji.
Zadziałało od razu, oczywiście; Dziękuję Ci bardzo! Nie użyłem 1.6.1 tych słoików, ponieważ nie wydają się być dostępne. Jestem bardzo zirytowany na m2eclipse, który rzekomo pokazuje mi wszystkie dostępne wersje, ale w tajemniczy sposób opuszcza znaczną ich liczbę. –
W interesie kogokolwiek innego: na końcu znalazłem czerwoną strzałkę na wykresie zależności, ponieważ nawet najnowszy rdzeń logback kładzie nacisk na slf4j-1.6.0. Trochę więcej kręciło się z wersjami, aż zniknęły wszystkie czerwone strzałki, ale teraz działa zarówno jak i wszystkie niebieskie strzałki. –
Jak dokładnie to robię. – user1721803