导出jar包报错,不是自动配置类

导出jar包报错,不是自动配置类

  • 问题:在导出jar包的时候出现下面的错误
  • 原因:
    1. 这句话的意思是”不能排序以下类,因为他不是自动配置类”
    1. 之后就修改成了@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
  • 而这个注释是会自动根据jar包的依赖来自动配置项目。例如就是用了Mybatis,它的配置文件中会指定数据库的相关参数,这个时候exclude={DataSourceAutoConfiguration.class},让spring-boot不用根据Maven中依赖自动配置了
  • 修改之后又出现问题
    1
    2
    3
    4
    5
    6
    7
    Description:

    The bean 'druidProperties', defined in class path resource [cn/stylefeng/roses/core/config/MybatisDataSourceAutoConfiguration.class], could not be registered. A bean with that name has already been defined in class path resource [cn/stylefeng/guns/config/datasource/DataSourceConfig.class] and overriding is disabled.

    Action:

    Consider renaming one of the beans or enabling overriding by setting spring.main.allow-bean-definition-overriding=true
  • 解决办法:在application.yml文件中添加
  • 一般这个配置 会写在springboot的application.properties下面,这个配置主要是声明spring框架是否允许定义重名的bean对象覆盖原有的bean (spring boot默认是false),spring.main.allow-bean-definition-overriding = true就是允许定义相同的bean对象去覆盖原有的

导出jar包报错,不是自动配置类
http://example.com/2022/11/26/导出jar包报错-不是自动配置类/
作者
陈佳乐
发布于
2022年11月26日
许可协议