苦报错久矣之:javax.validation.ValidationException: HV000183: Unable to load 'javax.el.ExpressionFactory'

苦报错久矣之:javax.validation.ValidationException: HV000183: Unable to load 'javax.el.ExpressionFactory'  

这个报错真是前后折磨了我半年时间。

全文比较啰嗦,同样添加依赖后没法解决问题的你可以直接拉到文末结论。

先说背景:每当项目代码需要本地调试的时候,拉起项目就会出现此报错。

刚开始无所畏惧,报错嘛,网上肯定有前辈踩过坑,百度一搜,果然像这种场景的:https://blog.csdn.net/u012043557/article/details/51365293  比比皆是。

内心OS:那就照着改依赖文件呗!

不过改之前内心还是犯嘀咕的:代码大家都是一个库fork出来的,都是用maven管理的,为啥别人pom文件不需要加额外依赖?

添加完依赖,import,继续拉起本地环境。

GG。

那应该不是这个问题,那会不会时我本地Tomcat的问题呢?

试了三个Tomcat版本,在tomcat lib目录下添加javax.el.jar包,删除servlet.jar等怪招也都试过,无果。

期间请教了几位大神帮忙定位,也没找到到底啥问题,也不好意思整天拉着别人帮忙定位问题╮(╯▽╰)╭

然后,我就放弃本地环境验证了,扑哧扑哧跑到开发环境替包验证去了⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄

就这样相安无事的过了几个月。。。

然后,年后转战新项目,新项目处于初生牛犊状态,application里main方法直接拉起就能测了。

内心OS:这回本地调测轮到我了吧哈哈哈

然,卒

嗨,我反而有点头绪了。

新项目不需要tomcat容器,pom.xml中软件依赖是我自己升级确认的。

耳边开始盘旋~~

Once you eliminate the impossible, whatever remains, no matter how improbable, must be the truth.” - Sherlock Holmes

真相永远只有一个 -工藤新一

既然和容器和pom.xml没关系,剩下的再不可能也只能是真相了!

剩下啥呢?

编辑器我使用的idea,那就先从idea版本入手(没办法,CV选手只能摸索出真知)

将idea版本从2018.2.2升级到2019.3.2,拉起main,卒

嗨,那就不是编辑器的问题。

那还剩下啥呢?

JDK?

WHAT??jdk背后给我一刀?

内心一百个羊驼跑过

我JDK是1.8版本啊,和大家一样啊!

难道是小版本?

速去求证了下:鄙人jdk小版本1.8.1,别人不报错的是1.9.2.。。

怀着无比激动忐忑的心情,将jdk小版本升级至2.1.*(别问我为啥不和别人保持版本一致,我想试试)

然,拉起成功了。。。。。。

真的是JDK版本的锅

事后细想了下,应该是jdk中的javax.el.*.java不能匹配hibernate中的valide功能,具体代码细节待我分析后贴出来。

结论:验证下你本地的jdk版本,如果版本低,就升级吧!这是解决这个问题的另一个思路!

 

 

 

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值