Unable to start embedded container SpringBoot启动报错
自己手动创建的一个SpringBoot工程,添加的依赖,报了这个错,然后百度没看到明显的错误:
org.springframework.context.ApplicationContextException: Unable to start embedded container; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'tomcatEmbeddedServletContainerFactory'
往下看最根本的报错信息:
Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.hibernate.validator.internal.engine.ConfigurationImpl
嗯嗯,是这个类ConfigurationImpl出问题了,憋说了点进去看看翻一翻
初看,一切正常~~
往下看,嗯?
怎么日志这里报错了,代码是红的,
感觉应该是这里出了问题,点进去继续看看,???怎么全报红了
全红,有大问题呀,看一下这是什么依赖,jboss依赖,然后突然想到了,这个依赖有问题????
用IDEA看一下依赖关系,这里报错了,再去maven仓库看一下
依赖为空。。。。。这就是原因了。。。。。重新导入jar就可以了(我是因为本地有两个maven仓库,配置的时候没注意,所以没找到)
梳理一下过程:
spring-boot-starter-web依赖于hibernate-validator,然后这个继续向下依赖与jboss-logging,这个找不到,所以报错
hibernate-validator内部实现了一个日志框架,是基于jboss-logging开发的(jboss-logging和slf4j一样,都是门面日志框架,提供一些列日志接口规范,供其他人实现,谁都可以实现,SpringBoot默认使用的logback日志框架就给予slf4j的)
总结:SpringBoot启动报错,先看依赖
小疑问:依赖报错,pom文件为什么不报错呢,有点浪费时间呀!!!