在Linux上实现Swagger的自动化生成,通常需要以下几个步骤:
安装必要的工具:
设置项目:
pom.xml
(对于Maven)或build.gradle
(对于Gradle)文件中添加Swagger Codegen的依赖。Maven示例:
<dependency>
<groupId>io.swagger.codegen.v3</groupId>
<artifactId>swagger-codegen-cli</artifactId>
<version>3.0.29</version>
</dependency>
Gradle示例:
dependencies {
implementation 'io.swagger.codegen.v3:swagger-codegen-cli:3.0.29'
}
编写API规范:
swagger.yaml
或swagger.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
生成代码:
生成客户端代码示例:
java -jar swagger-codegen-cli.jar generate \
-i path/to/swagger.yaml \
-l java \
-o path/to/output/directory
生成API文档示例:
java -jar swagger-codegen-cli.jar generate \
-i path/to/swagger.yaml \
-l html2 \
-o path/to/output/directory
集成到构建过程:
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 = "$projectDir/src/main/resources/swagger.yaml".toString()
generatorName = 'java'
outputDir = file("$buildDir/generated-sources")
}
通过以上步骤,你可以在Linux上实现Swagger的自动化生成。根据具体需求,你可以选择生成不同语言的客户端代码,或者生成不同格式的API文档。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读:CentOS与Swagger结合,实现API文档的自动化生成