我已经为我当前的项目添加了 swagger,该项目使用的是 spring 版本 3.1.2。
我在 pom.xml 中添加了以下依赖项
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
<version>2.2.0</version>
</dependency>
在application.yml里面这个配置:
springdoc:
api-docs:
path: /api-docs
enabled: true
在我的 SpringBootApp 主类中添加了 @OpenAPIDefinition 注释
当我运行应用程序并访问 http://localhost:8080/swagger-ui/index.html 时,我收到此消息
在应用程序内我收到消息:
WARN 35407 --- [io-8080-exec-10] o.s.web.servlet.PageNotFound No mapping for GET /v3/api-docs/swagger-config
我已按照本教程中的说明进行操作,并看到类似的问题,例如此处,但仍然无法正常工作。
有人知道我做错了什么。
我希望看到 swagger 正常工作,但没有按预期工作。
我已经阅读了整个教程示例,但我无法使其工作。
我也遇到了和你类似的问题:
这是我的 代码片段,来自我的 “application.yml” 文件。
springdoc:
show-actuator: true
api-docs:
path: /authentication-service/v3/api-docs
这是我的“openapi”依赖项。
<properties>
<springdoc.version>2.3.0</springdoc.version>
</properties>
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
<version>${springdoc.version}</version>
</dependency>
- 有什么问题吗?
默认情况下,spring 文档搜索“/v3/api-docs”,如下图所示:
当我在 “api-docs” 中更改我的 path 时,但我输入:
springdoc:
show-actuator: true
api-docs:
path: authentication-service/v3/api-docs
然后:
这一切都是由于缺少反斜杠造成的。
另一种选择是配置 “swagger-ui”,如下所示:
springdoc:
show-actuator: true
api-docs:
path: /authentication-service/v3/api-docs
swagger-ui:
enabled: true
url: /authentication-service/v3/api-docs
然后:
我相信,如果“api-docs”配置正确,它应该可以工作,我希望我有所帮助。
致以诚挚的问候,
嗯