springdoc-openapi-ui - @RestController实现任何接口时无法生成api-doc - springdoc-openapi-ui
问题描述
关于我的项目的信息:
- 打开 Java 11.01
- springdoc-openapi-ui 1.5.2
- Spring 核心 5.1.2.RELEASE
- 春季启动 2.1.0.RELEASE
有了这个没有实现这个接口的控制器,我可以生成这个 API 文档:
@RestController
public class MissionApiImpl implements MissionApi {
@Override
@GetMapping("/test")
public ResponseEntity<Void> test() {
return new ResponseEntity( HttpStatus.OK );
}
}
生成的文档:
{"openapi":"3.0.1","info":{"title":"OpenAPI definition","version":"v0"},"servers":
[{"url":"http://localhost:9000/mgb/v6.0.0","description":"Generated server url"}],"paths":{"/test":
{"get":{"tags":["mission-api-impl"],"operationId":"test","responses":{"200":
{"description":"OK"}}}}},"components":{}}
但是有了这个界面:
public interface MissionApi {
ResponseEntity<Void> test();
}
我有这个错误:
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 0
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:890)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
Caused by: java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 0
at org.springframework.web.method.HandlerMethod$HandlerMethodParameter.getParameterAnnotations(HandlerMethod.java:430)
a
知道为什么吗?
我试图将这个 Getter 注释迁移到接口等,但仍然是同样的错误。
解决方案
我有同样的错误
springBootVersion = 2.1.1.RELEASE
springdocVersion = 1.5.9
当我升级到
springBootVersion = 2.1.3.RELEASE
所以这可能是 Spring Boot 错误或某些 Spring Boot 依赖项中的错误
推荐阅读
- .net - 卡夫卡,汇合客户端,偏移量
- kivy - 在 Kivy、RecycleView 中,如何滚动到最后一项?
- python - 从文件到字典对象没有循环
- unity3d - (解决方法)在 Unity 中,即使比例为 x1,我如何才能让游戏视图不像素化?
- wpf - 使用 Flash 的 CefSharp
- r - 仅在 Shiny 服务器上的 strsplit 问题
- loops - 如何在不重复的情况下组合单词(成分)?
- node.js - 正则表达式匹配除 (- 和 .) 之外的任何非数字
- gnupg - gpg:--sign,--clear-sign,--detach-sign
- php - 模块进纸器帮助发布