Spring boot 使用自定义404异常处理程序启用swagger UI

Spring boot 使用自定义404异常处理程序启用swagger UI,spring-boot,kotlin,swagger,swagger-ui,Spring Boot,Kotlin,Swagger,Swagger Ui,我想禁用SpringBoot中的默认404处理程序,如: @ExceptionHandler(值=[NoHandlerFoundException::class]) 有趣的HandlerNotFoundException(e:NoHandlerFoundException):响应性{ 返回ResponseEntity.status(未找到HttpStatus.NOT_) .contentType(MediaType.APPLICATION\u JSON\u UTF8) .body(ApiErro

我想禁用SpringBoot中的默认404处理程序,如:

@ExceptionHandler(值=[NoHandlerFoundException::class])
有趣的HandlerNotFoundException(e:NoHandlerFoundException):响应性{
返回ResponseEntity.status(未找到HttpStatus.NOT_)
.contentType(MediaType.APPLICATION\u JSON\u UTF8)
.body(ApiError(“未找到资源”))
}
并且能够通过
/swagger UI.html#
上的api文档为swagger UI提供服务器

但是,禁用默认404处理程序需要设置
应用程序属性
中的
spring.resources.add mappings=false
,这也禁用了服务招摇过市UI。有没有办法把这两者结合起来


我将
springboot:2.1.7
springox:swagger:2.9.2
springfox:swagger ui:2.9.2
一起使用,我们实现了swagger用户界面和自定义异常处理程序。我们的方法是解析api的swagger文件


我们已经通过配置@Bean of Docket配置了我们的招摇过市功能,该功能也在这个链接中指定:

是的,您可以通过扩展和添加下面的方法来实现

@覆盖
public void addResourceHandlers(ResourceHandlerRegistry注册表){
addResourceHandler(“swagger ui.html”)
.addResourceLocations(“类路径:/META-INF/resources/”;
registry.addResourceHandler(“/webjars/**”)
.addResourceLocations(“classpath:/META-INF/resources/webjars/”;
}
注意:确保您的类使用
@configuration