springboot项目使用了swagger2来自动生成文档,今天将swagger2升级到最新的2.9.2之后,发现:生成后发现文档里接口的顺序并不是按照代码里的顺序显示的。
如何使用代码里的顺序,或者可以自定义排序的规则?

解决方案 »

  1.   

    不修改源代码的情况下应该无法实现, 目前在源码中排序是按照参数名称排序,写死的,
    实现逻辑在springfox.documentation.service.Operation这个类public Operation(
          ......,
          List<Parameter> parameters,
          .....) {    .....
        this.parameters = FluentIterable.from(parameters)
            .toSortedList(byParameterName());
        .....
      }
      private Comparator<Parameter> byParameterName() {
        return new Comparator<Parameter>() {
          @Override
          public int compare(Parameter first, Parameter second) {
            return first.getName().compareTo(second.getName());
          }
        };
      }