【Java异常】Consider renaming one of the beans or enabling overriding by setting spring.main

编程知识 更新时间:2023-05-02 05:30:10

本文目录

一、项目背景

二、问题描述

 三、问题原因

四、解决方案

方案1:重新命名

方案2:修改配置文件


一、项目背景

今天配置了一个springboot项目,使用swagger2进行前后端分离开发。配置了swagger后竟然发现启动失败。

springboot (v2.1.8.RELEASE) + swagger (v2.8.0)

二、问题描述

***************************
APPLICATION FAILED TO START
***************************

Description:

The bean 'createRestApi', defined in com.spring4all.swagger.SwaggerAutoConfiguration, could not be registered. A bean with that name has already been defined in class path resource [com/baidu/practice/config/swagger/SwaggerConfig.class] and overriding is disabled.

Action:

Consider renaming one of the beans or enabling overriding by setting spring.main.allow-bean-definition-overriding=true

 三、问题原因

在启动项目时,createRestApi这个Bean已经存在,不能被注册。导致启动失败。

四、解决方案

目前想到的解决办法有两个,方案1和方案2,以后如果有新的解决办法再补充进来。也欢迎大家留言说出自己的想法。

方案1:重新命名

重新命名这个实例,例如本此问题把这个(createRestApi)名字改为另一个名字即可。

方案2:修改配置文件

main:
    allow-bean-definition-overriding: true #当遇到同样名字的时候,是否允许覆盖注册

如下配置为正确的写法

spring:
  application:
    name: test-springboot-service
    system: testspringboot
  main:
    allow-bean-definition-overriding: true # 意思是后来发现的bean会覆盖之前相同名称的bean
  profiles:
    active: local
  servlet:
    multipart:
      max-file-size: 1000MB
      max-request-size: 1000MB

  cloud:
    zookeeper:
      discovery:
        enabled: true
        register: true
        root: /iot-service
      connectString: devl.iot:52500
  jackson:
    date-format: yyyy-MM-dd HH:mm:ss
    time-zone: GMT+8

logging:
  config: classpath:logback.xml

完结!

更多推荐

【Java异常】Consider renaming one of the beans or enabling overriding by setting spr

本文发布于:2023-04-26 06:41:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/7ee823c3290ba609b4272bf71b4a2356.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:异常   beans   renaming   Java   enabling

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 104536文章数
  • 26215阅读数
  • 0评论数