我正在嘗試在我的 Spring Boot 專案中生成 Swagger UI。生成了 JSON API 檔案,但是 Swagger UI 沒有生成,至少當我輸入 swagger ui 地址時得到 404。我的依賴:
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>3.0.0</version>
</dependency>
但是,當我洗掉此配置(并且不執行任何其他操作)時:
@Configuration
public class WebConfig extends WebMvcConfigurationSupport {
@Override
protected void addFormatters(FormatterRegistry registry) {
registry.addConverter(new SomeEnumConverter());
registry.addConverter(new AnotherEnumConverter());
}
}
Swagger UI 有效。Swagger UI 是否有轉換器問題?是否有解決該問題的方法?
uj5u.com熱心網友回復:
您需要添加@EnableWebMvc 注解
@EnableWebMvc
@Configuration
public class WebConfig extends WebMvcConfigurationSupport {
@Override
protected void addFormatters(FormatterRegistry registry) {
registry.addConverter(new SomeEnumConverter());
registry.addConverter(new AnotherEnumConverter());
}
}
但我認為現在配置 WebMvc 的官方方法是實作 WebMvcConfigurer。您可以在官方檔案中看到幾個示例。如果您使用 Spring Boot,我認為它不需要 @EnableWebMvc。
@Configuration
public class WebConfig implements WebMvcConfigurer {
@Override
protected void addFormatters(FormatterRegistry registry) {
registry.addConverter(new SomeEnumConverter());
registry.addConverter(new AnotherEnumConverter());
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/337289.html
