Spring 管理的 bean 和非 Spring 管理的类加载顺序(如枚举)是怎样的

2019-02-15 11:02:34 +08:00
 EdenW

最近在项目中升级 spring 版本时遇到了问题,报了 java.lang.NoClassDefFoundError: Could not initialize class xxx.enums.xxxx 的错误,经过多番尝试发现是枚举中使用了 beanFactory 去手动获取 bean 那里导致的错误。 升级之前是没有问题的,也就是说可以正常获取到 bean ;但是升级之后就出了问题,猜测是由于获取 bean 的时候 bean 还没有初始化导致报错,所以求解答 Spring 管理的 bean 和非 Spring 管理的类加载顺序,看是否是这个原因导致的。 以及从哪里能确认高版本 spring 是否修改了类加载顺序

1237 次点击
所在节点    问与答
2 条回复
Lonely
2019-02-15 11:15:20 +08:00
NoClassDefFoundError 是类找不到,跟 bean 的加载顺序有啥关系
EdenW
2019-02-15 15:17:53 +08:00
@Lonely 看了看编译打包出来的 class 文件是有这个类的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/535206

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX