溫馨提示×

Ubuntu上Swagger文檔怎么生成

小樊
42
2025-05-05 13:47:59
欄目: 智能運維

在Ubuntu上生成Swagger文檔,通常涉及以下幾個步驟:

安裝Swagger工具

首先,你需要安裝Swagger UI和Swagger Editor??梢酝ㄟ^npm(Node.js的包管理器)來安裝:

# 安裝Node.js和npm(如果尚未安裝)
sudo apt update
sudo apt install -y nodejs npm

# 全局安裝Swagger UI和Swagger Editor
npm install -g swagger-ui-express swagger-editor-cli

編寫API規范

使用OpenAPI Specification(OAS)編寫API規范文件,通常是swagger.yamlswagger.json格式。例如,一個簡單的swagger.yaml文件示例:

openapi: 3.0.0
info:
  title: Sample API
  version: 1.0.0
paths:
  /users:
    get:
      summary: List all users
      responses:
        '200':
          description: An array of users
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/User'
components:
  schemas:
    User:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string

生成API文檔

使用Swagger Codegen CLI工具生成API文檔。以下命令將生成HTML格式的API文檔:

java -jar swagger-codegen-cli.jar generate \
  -i path/to/swagger.yaml \
  -l html2 \
  -o path/to/output/directory

path/to/swagger.yaml替換為你的OpenAPI規范文件的實際路徑,將path/to/output/directory替換為你希望輸出文檔的目錄。

集成到構建過程(可選)

你可以將Swagger Codegen集成到Maven或Gradle的構建過程中,以便在每次構建時自動生成代碼和文檔。以下是Maven和Gradle的集成示例:

Maven插件示例:

<build>
  <plugins>
    <plugin>
      <groupId>org.openapitools</groupId>
      <artifactId>openapi-generator-maven-plugin</artifactId>
      <version>5.2.1</version>
      <executions>
        <execution>
          <goals>
            <goal>generate</goal>
          </goals>
          <configuration>
            <inputSpec>${project.basedir}/src/main/resources/swagger.yaml</inputSpec>
            <generatorName>java</generatorName>
            <output>${project.build.directory}/generated-sources</output>
          </configuration>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>

Gradle任務示例:

plugins {
  id 'org.openapitools.codegen' version '5.2.1'
}

openApiGenerate {
  inputSpec = file("projectDir/src/main/resources/swagger.yaml").toString()
  generatorName = 'java'
  outputDir = file("buildDir/generated-sources")
}

通過以上步驟,你可以在Ubuntu上成功生成Swagger文檔。根據具體需求,你可以選擇生成不同語言的客戶端代碼,或者生成不同格式的API文檔。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女