Swagger not detecting Spring Data Rest APIs with Spring Boot

后端 未结 4 971
名媛妹妹
名媛妹妹 2021-02-04 05:21

I setup a Spring Boot project including Spring Data Rest and Swagger:


        org.springframework.boot
                 


        
4条回答
  •  青春惊慌失措
    2021-02-04 05:47

    For spring boot 2 you need to use springfox 3.0. Unfortunately at the time of this writing this version is not released yet but you can use the snapshot version.

    
        
          jcenter-snapshots
          jcenter
          http://oss.jfrog.org/artifactory/oss-snapshot-local/
        
    
    
    
        io.springfox
        springfox-swagger2
        3.0.0-SNAPSHOT
    
    

    Also you need to replace @EnableSwagger2 with @EnableSwagger2WebMvc.

    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.context.annotation.Import;
    import springfox.documentation.builders.PathSelectors;
    import springfox.documentation.builders.RequestHandlerSelectors;
    import springfox.documentation.spi.DocumentationType;
    import springfox.documentation.spring.data.rest.configuration.SpringDataRestConfiguration;
    import springfox.documentation.spring.web.plugins.Docket;
    import springfox.documentation.swagger2.annotations.EnableSwagger2WebMvc;
    
    @Configuration
    @EnableSwagger2WebMvc
    @Import(SpringDataRestConfiguration.class)
    
    public class SwaggerConfig {
      @Bean
      public Docket api() {
        return new Docket(DocumentationType.SWAGGER_2)
            .select()
            .apis(RequestHandlerSelectors.any())
            .paths(PathSelectors.any())
            .build();
      }
    }
    

提交回复
热议问题