接口通路時,錯誤提示全部内容是:
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiYTMfhHLlN3XnxCM38FdsYkRGZkRG9lcvx2bjxCMy8VZ6l2csEEdFFVQClGVF5UMR9Fd4VGdsATNfd3bkFGazxSUhxGatJGbwhFT1Y0Mk9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnLlBTOihDZ2IDO2ImY4QGM4IzMkRTNmFmYhVzN3QDM3kzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter] with root cause。
産生的原因:
我本地的JDK是直接在網上下載下傳的最新的,jdk-17,本版過高導緻的報錯異常。根據其他文章所說,JDK8之後做了巨大改變,JAXB API是java EE 的API,JDK9 中引入了子產品的概念,預設情況下,Java SE中将不再包含java EE 的Jar包,,是以在JDK中不再包含這個Jar 包,而在 java 6/7/8 時關于這個API 都是捆綁在一起的。
解決辦法:
在pom.xml中添加JAXB依賴,方法如下:
<dependency> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</artifactId> <version>2.3.0</version> </dependency>
重新加載maven ,運作OK