今天在启动网关服务时遇到一个奇葩问题:
报如下错误:
Description:
The Bean Validation API is on the classpath but no implementation could be found
Action:
Add an implementation, such as Hibernate Validator, to the classpath
2020-09-03 10:52:15.811 WARN 7756 — [ main] o.s.boot.SpringApplication : Unable to close ApplicationContext
百度查看 Hibernate Validator
Hibernate Validator 是 Bean Validation 的参考实现 . Hibernate Validator 提供了 JSR 303 规范中所有内置 constraint 的实现,除此之外还有一些附加的 constraint。
Bean Validation 为 JavaBean 验证定义了相应的元数据模型和API。缺省的元数据是 Java Annotations,通过使用 XML 可以对原有的元数据信息进行覆盖和扩展。Bean Validation 是一个运行时的数据验证框架,在验证之后验证的错误信息会被马上返回。
作者:白袜子先生
链接:https://www.jianshu.com/p/0bfe2318814f
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
之后百度查看需要添加相应的依赖
启动还是报错如下
大概意思Hibernate Validator启动初始化失败,继续百度查看,说Hibernate Validator版本不对,于是到maven仓库重新找个新的版本
<!-- https://mvnrepository.com/artifact/org.hibernate.validator/hibernate-validator -->
<dependency>
<groupId>org.hibernate.validator</groupId>
<artifactId>hibernate-validator</artifactId>
<version>6.1.5.Final</version>
</dependency>
6.1.5.Final版本的
重新启动问题解决