最近在学习安卓的新套件Jetpack,从谷歌官网下载了demo项目sunflower来做研究。
但是在编译运行的时候提示

java.lang.ClassNotFoundException: javax.xml.bind.JAXBException

经过查询资料,发现是JDK版本的问题

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

解决方案也很简单,换回 JDK8 或者添加缺少的依赖就可以。
JDK我是不想降级的,毕竟新特性早晚得学。
但在尝试添加依赖后,发现又出现了其他的玄学问题(怀疑与kotlin不兼容?)

最后灵光一现,发现在 Android Studio 中内置了某个版本的JDK,使用那个版本即可。

是一个有点蠢的问题(捂脸)

文章作者: Jason_2k
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 极客卷毛——我的学习经验记录
Android
喜欢就支持一下吧