У меня есть последнее приложение Spring Boot и springdo c .swagger-ui на борту.
<dependency> <groupId>io.swagger</groupId> <artifactId>swagger-annotations</artifactId> <version>1.6.1</version> </dependency> <dependency> <groupId>org.springdoc</groupId> <artifactId>springdoc-openapi-ui</artifactId> <version>1.2.32</version> </dependency>
My application.properties содержит springdo c .swagger-ui.path = / swagger-ui -openapi. html
Когда я запускаю приложение через Intellij IDEA http://localhost: 8080 / swagger-ui-openapi. html приводит меня к http://localhost: 8080 / swagger-ui / index. html? ConfigUrl = / v3 / api-docs / swagger-config и страница пользовательского интерфейса Swagger загружается успешно.
Но если я запустил приложение через командную строку: «java -jar my-app.jar», я получил 404 в браузере и ошибку в журналах «Путь кругового представления [ошибка]» при попытке достичь http://localhost: 8080 / swagger-ui-openapi. html и перенаправляет меня на http://localhost: 8080 / swagger-ui / index. html? ConfigUrl = / v3 / api-docs / swagger-config
javax.servlet.ServletException: Circular view path [error]: would dispatch back to the current handler URL [/error] again. Check your ViewResolver setup! (Hint: This may be the result of an unspecified view, due to default view name generation.)
Однако http://localhost: 8080 / v3 / api-docs доступен, и схема доступна по этому адресу.
Как я могу это исправить?
Вам не нужна зависимость swagger-annotations v1.6.1 для springdo c -openapi;
По умолчанию для springdo c вам не нужны дополнительные настройки любого ViewResolver.
Вы можете посмотреть пример кода: