java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException

今天配置hibernate环境时遇到一个问题

ognl.MethodFailedException: Method "login" failed for object web.UserAction@4453a1b4 [java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException]

百度了下,看了广大网友的答案,了解了其中的原由,做一个简单的记录,方便自己也方便他人。

产生这个问题的原因主要是使用JDK 9.0 及其以上,JDK9做了巨大改变(推荐使用JDK8,至于原因大家可以百度Oracle发布JDK的规则,现在公司做开发也基本都是使用的JDK8,很少会使用9及以上)。

可以下载javax.activation-1.2.0.jar,jaxb-api-2.3.0.jar,jaxb-core-2.3.0.jar,jaxb-impl-2.3.0.jar四个jar包

JAXB API是java EE的API,而java EE的API不再包含对java SE 9的模块中,因此JAXB APIs不再包含在java SE 9的默认类路径中,因此引发了以上报错

本人推荐的方法是导入4个jar包就能完美解决。

以示对作者的尊重,大家可以看看原帖:

https://stackoverflow.com/questions/43574426/how-to-resolve-java-lang-noclassdeffounderror-javax-xml-bind-jaxbexception-in-j

网友翻译的:

https://blog.csdn.net/hadues/article/details/79188793

 

  • 6
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值