【发布时间】:2021-03-31 08:33:39
【问题描述】:
我有 yaml 定义中的插件生成的招摇
<plugin>
<groupId>org.openapitools</groupId>
<artifactId>openapi-generator-maven-plugin</artifactId>
<version>4.3.1</version>
<configuration>
<logToStderr>false</logToStderr>
<generatorName>spring</generatorName>
<generateSupportingFiles>true</generateSupportingFiles>
<supportingFilesToGenerate>ApiUtil.java</supportingFilesToGenerate>
<ignoreFileOverride>${project.basedir}/src/main/resources/.openapi-generator-ignore
</ignoreFileOverride>
<configOptions>
<dateLibrary>java8-localdatetime</dateLibrary>
<serializableModel>true</serializableModel>
<delegatePattern>true</delegatePattern>
<useBeanValidation>true</useBeanValidation>
<performBeanValidation>true</performBeanValidation>
...
这会生成带有空控制器组的 swagger 文档
我想删除它们
我尝试修改
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
//.ignoredParameterTypes(DokumentApiController.class)
.select()
//.apis(RequestHandlerSelectors.basePackage("....dokument.api"))//.apis(GroupNameFilter()) //
//.apis(RequestHandlerSelectors.withClassAnnotation(Api.class))
.apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class))
.paths(PathSelectors.any()) //.paths(restApiPaths()) //.paths(PathSelectors.any())
.build()
.apiInfo(apiInfo());
您可以在注释代码中看到我尝试过的内容。结果总是一样的。我要么有空组,要么文档页面上没有任何内容http://127.0.0.1:8080/.../swagger-ui.html#/
如何删除那些空的“-controller”组?
P.S.:我看到 How to remove controller list from Swagger UI 我尝试在实现 Delegate 的类中使用它,但我的解决方案中的很多类都是由插件生成的,我无法直接更改它们。
【问题讨论】:
-
我看到那个帖子我在课堂上尝试过它实现了委托,但它对我没有帮助。我的问题是生成了很多类,我无法直接更改它们。
-
好的,您尝试过这些方法吗? Check Here
-
我无法为生成的类添加注释。它将在下一次构建期间被覆盖。我必须找到一种方法如何制作插件来为我插入这些注释到生成的类中,我现在不知道该怎么做。
标签: java spring swagger dynamically-generated