控制台报错:java.lang.ClassNotFoundException: javax.xml.bind.JAXBException之解决方法

错误提示:
图片描述

图片描述

亲测有效之解决方案:
JAXB API是java EE 的API,因此在java SE 9.0 中不再包含这个 Jar 包。java 9 中引入了模块的概念,默认情况下,Java SE中将不再包含java EE 的Jar包 。而在 java 6/7 / 8 时关于这个API 都是捆绑在一起的。

方案一:

降低JDK 9 版本到 JDK 6/7/8

方案二:(亲测可行)

手动加入这些依赖Jar包

需要导入下面四个Jar包:

javax.activation-1.2.0.jar
http://search.maven.org/remotecontent?filepath=com/sun/activation/javax.activation/1.2.0/javax.activation-1.2.0.jar

jaxb-api-2.3.0.jar
http://search.maven.org/remotecontent?filepath=javax/xml/bind/jaxb-api/2.3.0/jaxb-api-2.3.0.jar

jaxb-core-2.3.0.jar
http://search.maven.org/remotecontent?filepath=com/sun/xml/bind/jaxb-core/2.3.0/jaxb-core-2.3.0.jar

jaxb-impl-2.3.0.jar
http://search.maven.org/remotecontent?filepath=com/sun/xml/bind/jaxb-impl/2.3.0/jaxb-impl-2.3.0.jar

下载上面这些文件并复制到libs文件夹下, 添加到Build Path中 ,重新运行即可。

注:还找到一种maven下的另一种解决方案,见链接https://blog.csdn.net/hadues/article/details/79188793