Проблема
Я изучаю загрузку Java Spring, и моя проблема заключается в загрузке интерфейса Swagger с http://localhost:8080/swagger-ui.html#/Я получаю следующее консольное сообщение:
WARN 23432 --- [nio-8080-exec-9] o.s.web.servlet.PageNotFound : No mapping for GET /swagger-ui.html
Справочная информация
Я создал стартовый проект с использованием весенней загрузки с базовым API и протестировал конечные точки с помощью почтальона, ок. .
Я использую версию Spring-boot-starter-parent v2.6.4.
Я впервые пробую Swagger и включил в свой pom следующее: .xml
groupId io.springfox
artifactId springfox-boot-starter
version 3.0.0
В моем application.yml я добавил следующее, чтобы решить проблему сборки, связанную с несоответствием версии/зависимостей.
spring:
mvc:
pathmatch:
matching-strategy: ant_path_matcher
Я добавил следующий класс в свой пакет конфигурации на основе учебного пособия, которому я следую.
@Configuration
@EnableWebMvc
@Import(SpringDataRestConfiguration.class)
public class ApplicationSwaggerConfig {
@Bean
public Docket speakersApi() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build();
}
Я нашел несколько статей, в которых предлагалось переопределить обработку ресурсов следующим образом, чтобы решить проблему, но это не помогло:
@Configuration
public class WebMvcConfigurer extends WebMvcConfigurationSupport {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/**").addResourceLocations("classpath:/static/");
registry.addResourceHandler("swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
super.addResourceHandlers(registry);
}
Подробнее здесь: https://stackoverflow.com/questions/714 ... er-ui-html