ValueExtractorManager 问题思考

时间:2025-02-15 15:41:46

1、抛出问题信息

 
本地windows和测试服Linux环境下工程启动没问题,正式环境启动报错信息如下:

Caused by: : Could not initialize class 
	at .<init>(:140) ~[hibernate-validator-6.0.:6.0.]
	at (:38) ~[hibernate-validator-6.0.:6.0.]
	at (:364) ~[hibernate-validator-6.0.:6.0.]

注意环境区别:
本地和测试服命令行启动,正式环境是用docker

2、解决过程


1)期初怀疑是工程打包jar的问题,但是工程jar包在本地和测试服都可以正常启动,所以排除jar包问题;
2)怀疑是docker环境问题,为了确认是docker问题,
   a)在正式环境下命令行启动,报一样的错误;
   b)在正式环境的堡垒机上java -jar  ,发现可以正常启动;
   故不能确认docker环境是否正常,但可以确认正式环境肯定有问题,便开始怀疑是jdk问题;
3)头脑风暴~~最终与大神讨论后,问题点确认是jdk版本方向;
4)在比对各环境下jdk版本: 正式环境1.8.022,其他环境均高于此版本(正式环境是提供方默认安装版本),将正式环境jdk提升至1.8.161后,命令行可正常启动,到此确认是jdk版本低导致的。

从问题的发现到解决,各个可能会出现问题的点被一一排除。

到此借用宋代诗人陆游《游山西村》名句“山重水复疑无路,柳暗花明又一村”。