1、版本
jdk:17
springboot:3.0.2
springcloud:2022.0.0
springcloud-alibaba:2022.0.0.0-RC2
knife4j:4.3.0
2、问题:
使用接口分组排序注解不生效
@ApiSupport(order = 1)
@ApiSort(1)
@Tag(name = "公司管理")
@RestController
不会生成tags标签,也没有x-order扩展属性
3、解决:
查阅资料,版本应该是有bug,官方文档:
开发者必须使用knife4j-openapi2-spring-boot-starter
组件才生效。我使用的是knife4j-openapi3-jakarta-spring-boot-starter。
在issues中找到解决办法,更改@Tag注解:
@Tag(name = "公司管理", description = "公司管理", extensions = {
@Extension(properties = {@ExtensionProperty(name = "x-order", value = "1", parseValue = true)}
)
})
重启后排序生效了,接口出现了tags标签。更改排序只用更改@Tag中 value = "1" 的值即可。
tags: [{name: "公司管理", description: "公司管理", x-order: 1}]