From 1297d094cb5ee7305d151cd8b4a8a5659275ae97 Mon Sep 17 00:00:00 2001
From: 淡然逝去 <gitoshub@126.com>
Date: Thu, 16 Jun 2022 12:56:12 +0800
Subject: [PATCH] 使用 @Lazy,@AutoConfigureBefore注解解决循环引用及Bean重复问题,删除allow-bean-definition-overriding: true, allow-circular-references: true配置信息

---
 ruoyi-gateway/src/main/java/com/ruoyi/gateway/config/SwaggerProvider.java |   18 +++++++++++++++++-
 1 files changed, 17 insertions(+), 1 deletions(-)

diff --git a/ruoyi-gateway/src/main/java/com/ruoyi/gateway/config/SwaggerProvider.java b/ruoyi-gateway/src/main/java/com/ruoyi/gateway/config/SwaggerProvider.java
index c0bdd7a..81b8c31 100644
--- a/ruoyi-gateway/src/main/java/com/ruoyi/gateway/config/SwaggerProvider.java
+++ b/ruoyi-gateway/src/main/java/com/ruoyi/gateway/config/SwaggerProvider.java
@@ -7,11 +7,18 @@
 import org.springframework.cloud.gateway.route.RouteLocator;
 import org.springframework.cloud.gateway.support.NameUtils;
 import org.springframework.stereotype.Component;
+import org.springframework.web.reactive.config.ResourceHandlerRegistry;
+import org.springframework.web.reactive.config.WebFluxConfigurer;
 import springfox.documentation.swagger.web.SwaggerResource;
 import springfox.documentation.swagger.web.SwaggerResourcesProvider;
 
+/**
+ * 聚合系统接口
+ * 
+ * @author ruoyi
+ */
 @Component
-public class SwaggerProvider implements SwaggerResourcesProvider
+public class SwaggerProvider implements SwaggerResourcesProvider, WebFluxConfigurer
 {
     /**
      * Swagger2默认的url后缀
@@ -20,6 +27,7 @@
     /**
      * 网关路由
      */
+    @Lazy
     @Autowired
     private RouteLocator routeLocator;
 
@@ -58,4 +66,12 @@
         swaggerResource.setSwaggerVersion("2.0");
         return swaggerResource;
     }
+
+    @Override
+    public void addResourceHandlers(ResourceHandlerRegistry registry)
+    {
+        /** swagger-ui 地址 */
+        registry.addResourceHandler("/swagger-ui/**")
+                .addResourceLocations("classpath:/META-INF/resources/webjars/springfox-swagger-ui/");
+    }
 }

--
Gitblit v1.9.3