问题描述
在使用springboot3+springsecurity6.0进行登陆验证时,出现如下错误java.lang.ClassNotFoundException: javax.xml.bind.DatatypeConverter
原因分析:
网上说是jdk版本太高导致
JAXB API是java EE 的API,因此在java SE 9.0 中不再包含这个 Jar 包。
java 9 中引入了模块的概念,默认情况下,Java SE中将不再包含java EE 的Jar包
而在 java 6/7 / 8 时关于这个API 都是捆绑在一起的
解决方案:
方案一:
降低直接的jdk版本
方案二:pom.xml中添加maven依赖
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.1</version>
</dependency>