使用DataBinding出现java.lang.ClassNotFoundException: javax.xml.bind.JAXBException

为君一笑 提交于 2020-03-16 21:05:00

查找了多个网站,知道了是因为Java9以上出现的这个错误,试了很多大家的建议都无效,通过这篇帖子发现,在gradle中:

  • 指定Java的版本是无效
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
  • 添加下面依赖无效
dependencies {
        classpath "javax.xml.bind:jaxb-api:2.3.1"
        classpath "com.sun.xml.bind:jaxb-core:2.3.0"
        classpath "com.sun.xml.bind:jaxb-impl:2.3.1"
        classpath "javax.activation:activation:1.1.1"
    }

结合一个答者的这句话:

“根据Android Bug Tracker上的Android项目成员,截至2019-03-07:
Android studio及其工具不支持Java 11。”

我果断卸载了java11,安装java8,经测试果然正常了。

现在已经是2020年3月了,怎么还不支持java11。

所以综上,如果你是做练习学习dataBinding,快速解决的话就降低JDK版本到Java8,如果你是用java9以上的新特性,还是再查查如何解决,求告知感谢!

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!