2016-08-10 3 views
0

Я использую Jetty в течение длительного времени. Это первый случай, когда я получаю эту ошибку, и я получил много этой ошибки, из-за чего сервер не ответил хорошо. Я использую Jetty 9.3.9 только для обработки соединений с веб-соединениями.зависимостей причала и slf4j

Exception in thread "qtp147268537-19366" 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.eclipse.jetty.util.log.JettyAwareLogger.log(JettyAwareLogger.java:607) 
    at org.eclipse.jetty.util.log.JettyAwareLogger.warn(JettyAwareLogger.java:431) 
    at org.eclipse.jetty.util.log.Slf4jLog.warn(Slf4jLog.java:69) 
    at org.eclipse.jetty.util.log.Slf4jLog.warn(Slf4jLog.java:64) 
    at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:646) 
    at java.lang.Thread.run(Thread.java:745) 

Существовало так много ошибок в течение 1 часа, что сделали сервер не принимают какие-либо новые соединения, но установленное в настоящее время соединение работало хорошо.

Порывшись больше в проблему, я думаю, что это имеет отношение к этому

_logger.log(marker, FQCN, level, msg, null, t); 

Я использую SLF4J-Апи-1.5.3.jar и SLF4J-log4j12-1.5.3.jar. Мне нужно обновить slf4j до более новой версии, потому что это может сломать некоторые другие вещи в моей программе? Если да, то какова минимальная требуемая версия? Или проблема в другом?

ответ

1

Да, вам необходимо обновить версию slf4j.

Рекомендуется использовать slf4j не менее версии 1.6.6. (Не стесняйтесь использовать что-то еще новее, как версия 1.7.12)

org.slf4j.api.LocationAware класс добавлена ​​поддержка нескольких SLF4J мостов: JCL-над-SLF4J, Июле к SLF4J и log4j-над-SLF4J, а также завернутые регистраторы.

Реализация Jetty's Slf4jLog использует обернутые регистраторы и, как таковой, для этого класса/метода существует.

Смежные вопросы