最近在学spring security的过程中经常遇见一下这样的异常:
java.lang.ClassNotFoundException: javax.xml.bind.DatatypeConverter
debug的过程中一直没有发现错误,最后发现是自己的JDK版本过高,大概是JDK9以上会发生的问题,解决方法一般有二种:
手动降低JDK版本
在idea中进行配置
在Maven依赖中导入缺少的包
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-core</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.1.1</version>
</dependency>