Swagger 没有生成完整的 api 文档

问题描述 投票:0回答:0

我已经使用 jaxrs 配置我的 java 应用程序以使用 swagger-api 生成 OpenAPI 的文档,但它没有生成 OpenAPI 对象的所有字段。 只是生成字段、openapi、路径和组件:

{
  "openapi": "3.0.1",
  "paths": {
    "/dummyCheck": {
      "post": {
        "operationId": "dummyCheck",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Dummy"
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "default response",
            "content": {
              "application/json": {}
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Dummy": {
        "type": "object",
        "properties": {
          "numero": {
            "type": "number"
          }
        }
      }
    }
  }
}

我已遵循文档中出现的说明,但是在类路径或 WEB-INF 中添加 openapi-configuration.json 文件并没有给出预期的结果。

我的

pom.xml
文件中有这个:

<dependency>
  <groupId>io.swagger.core.v3</groupId>
  <artifactId>swagger-jaxrs2</artifactId>
  <version>2.2.7</version>
</dependency>
<dependency>
  <groupId>io.swagger.core.v3</groupId>
  <artifactId>swagger-jaxrs2-servlet-initializer-v2</artifactId>
  <version>2.2.7</version>
</dependency>

暴露服务的类是这样的

@Path("")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public class RSDummyCheck {
    
    @Path("/dummyCheck")
    @POST
    public Response dummyCheck(Dummy input) {
        Dummy resultado = input;
        return Response.ok(resultado, "application/json").build();
    }

}

我在

openapi-configuration.json
中使用的配置是:

{
    "prettyPrint" : true,
    "cacheTTL": 0,
    "readAllResources": true,
    "openAPI": {
        "info": {
            "version": "1.0",
            "title": "Title",
            "description": "Here is the description",
            "contact": {
                "email": "[email protected]"
            }
        }
    }
}

我已将文件 openapi-configuration.json 移动到文档说明的所有位置(WEB-INF,在类路径中)并且我更改了名称和扩展名,但没有任何效果。 我已经调试了 io.swagger.v3.jaxrs2.integration.servlet.SwaggerServletInitializer 并且它没有读取文件。

为什么生成不完整,没有走openapi-configuration文件?

java swagger jax-rs openapi
© www.soinside.com 2019 - 2024. All rights reserved.