java.lang.NoSuchFieldError: REFLECTION 问题修订

有时候我们合并了新的其他人提交的代码后,服务运行可能会出现以下错误:

java.lang.NoSuchFieldError: REFLECTION 问题修订_第1张图片

 

该错误是由于jaxb-impl包存在多个版本导致的,此时查看maven的依赖关系,发现 jaxb-impl有多个版本。此时移除某个版本即可,如下:点击exclude按钮(该分析需要下载idea的Maven Helper插件)

java.lang.NoSuchFieldError: REFLECTION 问题修订_第2张图片

java.lang.NoSuchFieldError: REFLECTION 问题修订_第3张图片

 

部分情况下,本地移除了对应的 jaxb-impl版本以后,启动依然报上述异常。此时大概率是因为本地的.m2仓库中依然有旧的版本jar包,而运行时由于缓存原因依然使用了该版本jar包,如下。此时把对应的文件夹删除,再次运行即可。

java.lang.NoSuchFieldError: REFLECTION 问题修订_第4张图片

 

你可能感兴趣的:(maven,java)