Обновление logback с 1.1.11 до 1.3.0-alpha4 в приложении Spring boot-1.5.8 - PullRequest
0 голосов
/ 18 апреля 2019

Spring boot 1.5.8 по умолчанию предоставляет версию logback-1.1.11. Я пытаюсь обновить версию logback с 1.1.11 до 1.3.0-alpha4 и добавил следующие два свойства в pom.

<slf4j.version>1.8.0-beta4</slf4j.version>
<logback.version>1.3.0-alpha4</logback.version>

Получение приведенного ниже исключения при попытке запустить приложение.

Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/impl/StaticLoggerBinder
    at org.springframework.boot.logging.logback.LogbackLoggingSystem.getLoggerContext(LogbackLoggingSystem.java:273)
    at org.springframework.boot.logging.logback.LogbackLoggingSystem.beforeInitialize(LogbackLoggingSystem.java:98)
    at org.springframework.boot.logging.LoggingApplicationListener.onApplicationStartingEvent(LoggingApplicationListener.java:230)
    at org.springframework.boot.logging.LoggingApplicationListener.onApplicationEvent(LoggingApplicationListener.java:209)
    at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172)
    at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165)
    at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139)
    at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:122)
    at org.springframework.boot.context.event.EventPublishingRunListener.starting(EventPublishingRunListener.java:69)
    at org.springframework.boot.SpringApplicationRunListeners.starting(SpringApplicationRunListeners.java:48)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:292)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1118)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1107)
    at com.anthem.acmp.service.UMIDALServiceApplication.main(UMIDALServiceApplication.java:25)
Caused by: java.lang.ClassNotFoundException: org.slf4j.impl.StaticLoggerBinder
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 14 more

Я обнаружил, что logback-classic-1.1.11.jar содержит пакет org.slf4j.impl, который имеет класс StaticLoggerBinder, который недоступен в logback-classic-1.3.0-alpha4 и вызывает эту проблему.

1 Ответ

0 голосов
/ 18 апреля 2019

Logback 1.3 и SLF4J 1.8 содержат критические изменения API по сравнению с их версиями 1.2 и 1.7 соответственно.На момент написания этой статьи Spring Boot не совместим с новым API.Существует проблема , которая отслеживает поддержку новых версий.Он не будет решен до тех пор, пока проекты не стабилизируются и не перейдут в альфа-версию или бета-версию.

...