这里博主遇到是spring中引入依赖包,造成版本冲突的问题。

方法1:

 我在使用spring框架中的aop时,报错,上面的意思就是说,你的bean类,无法正常注入到容器中,这里最重要的就是你引入的依赖包,版本不一致所导致的问题!!! 

举例子:

在pom.xml引入的依赖包:(注意看版本号)

 <dependencies>
<!-- 引入ioc的beans基本包-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
            <version>5.2.9.RELEASE</version>
        </dependency>
<!--引入ioc的core基本包-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>5.2.9.RELEASE</version>
        </dependency>
<!--引入ioc的context基本包-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.2.9.RELEASE</version>
        </dependency>
<!--引入ioc的expression的基本包-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-expression</artifactId>
            <version>5.2.9.RELEASE</version>
        </dependency>

<!--下面引入关于spring- aop的包-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-aop</artifactId>
            <version>5.3.8</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-aspects</artifactId>
            <version>5.3.8</version>
        </dependency>

在用spring-aop时,要引入spring-aop 和 spring-aspects这两个jar包,但是与前面ioc引入的jar包的版本号不一致,所以导致了冲突,类的注入异常。这里的spring的版本号是5.2.9所以和5.3.8的jar包冲突。

如何查询Spring的版本号:

String version = SpringVersion.getVersion();
        System.out.println(version);

解决办法:::所以只需要将引入的依赖包改为版本号一致的就行,都改成5.3.8

方法2:

因为Spring-AOP基于的是aspectj框架:也可以引入一下两个包,不会造成版本冲突的问题

       <!--引入aspectjrt包的依赖-->
        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjrt</artifactId>
            <version>1.9.6</version>
        </dependency>
        <!--aspectjweaver包的依赖-->
        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjweaver</artifactId>
            <version>1.9.6</version>
        </dependency>
        <dependency>

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐