今天在本地使用JDK11
環境運行一個JDK1.8
項目時報如下錯誤
在參考真正解決方案:java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter
錯誤原因
JAXB API
是java EE
的API
,因此在java SE 9.0
中不再包含這個 Jar
包。java 9
中引入了模塊的概念,默認情況下,Java SE
中將不再包含java EE
的Jar
包。而在 java 6/7/8
時關於這個API
都是捆綁在一起的
解決方法一:
降低JDK
版本到 JDK 8
解決方法二:
<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>