排错笔记 —— java.lang.NoClassDefFoundError: ch/qos/logback/core/joran/spi/JoranException

项目环境

  1. Springboot
  2. Maven
  3. jdk 1.8.0_191

触发场景
项目启动的时候抛出异常

堆栈信息

Failed to instantiate SLF4J LoggerFactory
Reported exception:
java.lang.NoClassDefFoundError: ch/qos/logback/core/joran/spi/JoranException
	at org.slf4j.LoggerFactory.bind(LoggerFactory.java:150)
	at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:124)
	at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:412)
	at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:357)
	at org.apache.commons.logging.LogAdapter$Slf4jAdapter.createLocationAwareLog(LogAdapter.java:130)
	at org.apache.commons.logging.LogAdapter.createLog(LogAdapter.java:91)
	at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:67)
	at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:59)
	at org.springframework.boot.SpringApplication.(SpringApplication.java:194)
	at org.marvelousness.springboot.simple.SpringbootApplicationEntrance.main(SpringbootApplicationEntrance.java:14)
Caused by: java.lang.ClassNotFoundException: ch.qos.logback.core.joran.spi.JoranException
	at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 10 more

导致原因

缺失 logback 依赖

解决方案

查阅资料后得知,需要将如下依赖加入到依赖列表中

<dependency>
	<groupId>ch.qos.logbackgroupId>
	<artifactId>logback-coreartifactId>
	<version>1.1.3version>
dependency>
<dependency>
	<groupId>ch.qos.logbackgroupId>
	<artifactId>logback-classicartifactId>
	<version>1.1.3version>
dependency>
<dependency>
	<groupId>ch.qos.logbackgroupId>
	<artifactId>logback-accessartifactId>
	<version>1.1.3version>
dependency>

可亲测结果是,只需要将 logback-classic 加入即可。即:

<dependency>
	<groupId>ch.qos.logbackgroupId>
	<artifactId>logback-classicartifactId>
	<version>1.1.3version>
dependency>

然后不要忘记更新下 maven,即 Maven–>Update Project

你可能感兴趣的:(Java,java,logback,spring,boot,slf4j,bug)