How to resolve java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException

我已经很久没有写博客了,由于今天遇到问题是关于jdk版本的,想要写一篇博客记录一下此问题,重拾久违的blog编辑器,倍感惭愧!ok切入正题了哦

问题大致如下截图

How to resolve java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException_第1张图片

JAVA SE 9 以后 没有引入JAVA EE 的APIs了如下

java.activation
java.corba
java.transaction
java.xml.bind  << This one contains the JAXB APIs
java.xml.ws
java.xml.ws.annotation

 而我的版本是JAVA SE12所以会构建失败

 

解决办法1:

手动引入依赖包,如下配置(PS:此方法是我在stackoverflow.com此网站搜索的解法并没有,对我的项目并没有生效!!!,所以建议采用第二种方法)

//    implementation "javax.xml.bind:jaxb-api:2.3.0"
//    implementation "com.sun.xml.bind:jaxb-core:2.3.0"
//    implementation "com.sun.xml.bind:jaxb-impl:2.3.0"
//    implementation "javax.activation:activation:1.1.1"

解决办法2:

将JAVA SE JDK版本退回到8也就是v1.8版本,此方法解决了我的问题

other:以下方法我没有试过,但我觉得可以try

How to resolve java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException_第2张图片

 

你可能感兴趣的:(android,question)