处理路径时 Swagger NPE

Sam*_*rry 2 swagger

我有一个非常简单的 OpenAPI/Swagger 配置(openapi.yaml):

swagger: '2.0'
info:
  title: My Service
  version: 1.0
  description: A description for My Service
basePath: /my-service
schemes:
  - https
produces:
  - application/json
Run Code Online (Sandbox Code Playgroud)

我配置了 Maven Swagger Codegen 插件。跑步时,

> mvn clean install
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

java.lang.NullPointerException
  at io.swagger.codegen.DefaultGenerator.processPaths (DefaultGenerator.java:806)
  at io.swagger.codegen.DefaultGenerator.generateApis (DefaultGenerator.java:431)
  at io.swagger.codegen.DefaultGenerator.generate (DefaultGenerator.java:746)
  ...
Run Code Online (Sandbox Code Playgroud)

Sam*_*rry 5

问题是该paths字段是必需的。即使您不想包含任何路径,也必须使用空对象指定:

paths: {}
Run Code Online (Sandbox Code Playgroud)

将您的 openapi.yaml 更新为以下内容将摆脱所描述的 NPE:

swagger: '2.0'
info:
  title: My Service
  version: 1.0
  description: A description for My Service
basePath: /my-service
schemes:
  - https
produces:
  - application/json
paths: {}
Run Code Online (Sandbox Code Playgroud)