ClassNotFoundException: org.slf4j.impl.StaticLoggerBinder - PullRequest
0 голосов
/ 14 сентября 2018

Я преобразую приложение Spring в Spring-Boot, используя версию boot-starter-parent: 2.0.4.RELEASE.Когда я выполняю сборку с использованием mvn install, она проходит нормально, но когда я пытаюсь запустить приложение с помощью команды: mvn spring-boot:run -Dspring.profiles.active=dev, я получаю следующее исключение: ClassNotFoundException: org.slf4j.impl.StaticLoggerBinder

Вот зависимости в моем pom:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.4.RELEASE</version>
</parent>

<dependencies>
  <dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-sleuth</artifactId>
    <version>2.0.1.RELEASE</version>
  </dependency>
  <dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.24</version>
  </dependency>
  <dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>1.3.0-alpha4</version>
  </dependency>
  <dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-core</artifactId>
    <version>1.3.0-alpha4</version>
  </dependency>
</dependencies>

Я попытался следовать совету этого вопроса , использовать новые и старые версии зависимостей logback (как основных, так и классических) и добавлять'slf4j-log4j12' и 'slf4j-simple', но все еще получают исключение.Трассировка стека:

java.lang.NoClassDefFoundError: org / slf4j / impl / StaticLoggerBinder в org.springframework.boot.logging.logback.LogbackLoggingSystem.getLoggerContext (Logbackjog: 0).springframework.boot.logging.logback.LogbackLoggingSystem.LoggingApplicationListener.onApplicationEvent (LoggingApplicationListener.java:170) по адресу org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener (SimpleApplicationEventMulticaster.java:167) в org.springflex.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent (SimpleApplicationEventMulticaster.java:122) в org.springframework.boot.context.316) в org.springframework.boot.SpringApplication.run (SpringApplication.java:1258) в org.springframework.boot.SpringApplication.run (SpringApplication.java:1246) в com.hbo.esp.MyApplication.main (MyApplication.java): 17) at sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод)

1 Ответ

0 голосов
/ 14 сентября 2018

Попробуйте изменить версию каждой зависимости следующим образом.

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.25</version>
</dependency>
<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>1.2.3</version>
</dependency>
<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-core</artifactId>
    <version>1.2.3</version>
</dependency>

Надеюсь, это поможет.

...