当尝试将我的 Spring Boot 项目从 2.5.6 升级到 3.2.5 时,swagger UI 停止工作。 在版本 2.5.6 中,我没有 spring security 也没有安全配置。我只有 SwaggerConfig :
@Configuration
public class SwaggerConfig {
@Value("${spring.application.name}")
private String applicationId;
@Value("${spring.application.description}")
private String description;
@Value("${spring.application.version}")
private String version;
@Value("${app.env}")
private String env;
@Bean
public OpenAPI openAPI() {
return new OpenAPI()
.info(apiInfo())
.components(new Components());
}
private Info apiInfo(){
Info info= new Info();
info.setTitle(env + " - " + applicationId);
info.setDescription(description);
info.version(version);
return info;
}
}
升级到 Spring Boot 3.2.5 后是否需要添加 Spring Security,或者我应该更改我的 SwaggerConfig?还是其他地方有问题?
非常感谢您,祝您有美好的一天。
您的情况中的兼容性问题可能是由于 SpringFox 自 2020 年 7 月以来没有更新,其 最新版本 3.0.0 仅支持 Spring Boot 2.0.0。
您可能需要切换到SpringDoc,它与 Spring Boot 3.0.0 及更高版本兼容。
implementation group: 'org.springdoc', name: 'springdoc-openapi-starter-webmvc-ui', version: '2.2.0'
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
<version>2.2.0</version>
</dependency>
@Configuration
public class SwaggerConfig {
@Bean
public OpenAPI openAPI() {
return new OpenAPI()
.info(new Info()
.title("Title of the API")
.description("Description of the API.")
.version("Version of the API"));
}
}
祝你有美好的一天 - 凯文