spring_error——记录使用spring时的一些error

  直接进入正题。时间是2024-03-17

  1.FactoryBean threw exception on object creation; nested exception is java.lang.NoClassDefFoundError:

    参考了这个链接:怎么解决java.lang.NoClassDefFoundError错误-CSDN博客    一句话概括就是NoClassDefFoundError有很多原因,这里只写我遇到的情况。

    这是我的项目情况(跟着别人做的)

    

    出现了报错,我就弹去了他说的测试类bug代码处,接而检查了

UserDao userDao = (UserDao) applicationContext.getBean("userDaoProxy");
    这一句代码,然后去对应的xml(bean的xml配置文件),发现确实啥也没有写错,id没有误写,path也是直接右键copy path的。
    仔细看报错的图片(看那些比较独特的,看看得懂的),我发现了一个和spring有关的。在这句FactoryBean threw exception on object creation; nested exception is java.lang.NoClassDefFoundError:后面接上了一个jar包 spring-core,打开项目的pom.xml文件,仔细观察各种依赖,发现spring的基础包中spring-core包版本明显高于其他3个基础包,我就将其他的包的版本都提高了(应该是一样就可以了),问题解决。
        

   

   2.Exception in thread "main" java.lang.ClassCastException: class com.itheima.cglib.UserDao cannot be cast to class com.itheima.jdk.UserDao (com.itheima.cglib.UserDao and com.itheima.jdk.UserDao are in unnamed module of loader 'app')

    直接看,可以看出来说是.cglib.UserDao不能强转给.jdk.UserDao。问题就来了,为什么不能强转?本来可以强转的但是这里的类型变了所以不能强转了,为什么类型变了?我们在用注解的方式来使用Aspectj的时候可能压根就没有给一个bean给它。

     所以通过Aspectj的知识,去xml文件里面里找,会发现有可能找不到id为userdo的bean。因为根本没有,所以编译器不知道为什么把另一个包的bean拿过来用了。加上去就可以了。

本文作者:程序计算机人

本文链接:https://www.cnblogs.com/clina/p/18078026

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   程序计算机人  阅读(104)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 【杂谈】分布式事务——高大上的无用知识?
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起
  1. 1 Lions Pride Audio artist
  2. 2 Salty Sailor David Arkenstone
  3. 3 Stonefire David Arkenstone
Stonefire - David Arkenstone
00:00 / 00:00
An audio error has occurred, player will skip forward in 2 seconds.

Not available