7

我正在尝试使用Swagger Codegen » 2.2.1生成一些 Web 服务定义

所有配置都在工作,并且类是由我的.yaml定义正确生成的。

为什么财产basePath被忽视了?


我只使用定义@RestController生成:paths

https://springboot-base-save-return.appdes.xnet/saveBackendReturn

预期(使用basePathpaths定义):

https://springboot-base-save-return.appdes.xnet/v1/saveBackendReturn

我究竟做错了什么?我是不是忘记了什么?


我的.yaml合同:

swagger: '2.0'
info:
  description: My Project
  version: 1.0.0
  title: Save Backend Return
host: springboot-base-save-return.appdes.xnet
basePath: /v1
tags:
  - name: saveBackendReturn
    description: Save Backend Return
schemes:
  - https
paths:
  /saveBackendReturn:
    post:
      tags:
        - saveBackendReturn
      summary: Save Backend Return
      description: My Project
      operationId: saveBackendReturn
      consumes:
        - application/json
      produces:
        - application/json
      parameters:
        - in: body
          name: body
          description: My Project
          required: true
          schema:
            $ref: '#/definitions/saveBackendReturnRequest'
      responses:
        '200':
          description: Ok
          schema:
            $ref: '#/definitions/saveBackendReturnResponse'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/Error'
      security:
        - basicAuth: []
4

1 回答 1

10

搜索更多关于这个,我发现了问题

这是HugoMario修复的错误(提交于 2019 年 12 月 2 日引用

根据Helen的建议,我更新了我的 Swagger Codegen:

  • 从 » 2.2.1 » 旧版本(2016 年 8 月 7 日

  • 至 » 2.4.12 »当前稳定版本2020 年 1 月 15 日

摘要: » 这是一个过时版本的错误 »现在可以正常工作了!


Maven 依赖swagger-codegen-maven-plugin

<dependency>
    <groupId>io.swagger</groupId>
    <artifactId>swagger-codegen-maven-plugin</artifactId>
    <version>2.4.12</version>
</dependency>

Maven 中央存储库检查新版本):


更新 Maven 项目Eclipse 快捷方式F5)并进行干净的构建

mvn clean verify 
mvn install

参考:

于 2020-01-27T01:07:17.523 回答