在 Linux 上“整合 Swagger”通常取决于你使用的技术栈。下面我按最常见的几种场景给你一个清晰、可落地的说明,你可以直接对照使用。
Swagger 通常指:
现在主流标准是 OpenAPI 3.x,工具链通常是:
springdoc-openapi(Spring Boot 推荐)swagger-core(老项目)java -version
mvn -version
确保有 JDK 8+ 和 Maven / Gradle
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
<version>2.3.0</version>
</dependency>
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.3.0'
✅ 无需任何额外配置
mvn spring-boot:run
访问:
http://服务器IP:端口/swagger-ui/index.html
@RestController
@RequestMapping("/api")
public class UserController {
@Operation(summary = "获取用户")
@GetMapping("/user/{id}")
public User getUser(@PathVariable Long id) {
return new User(id, "Tom");
}
}
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>
@Configuration
@EnableOpenApi
public class SwaggerConfig {
}
访问:
/swagger-ui/index.html
⚠️ Springfox 已停止维护,不推荐新项目使用
适合:
wget https://github.com/swagger-api/swagger-ui/archive/refs/tags/v5.17.0.zip
unzip v5.17.0.zip
cp -r swagger-ui-5.17.0/dist /var/www/html/swagger
编辑:
/var/www/html/swagger/swagger-initializer.js
url: "http://你的IP/api/openapi.yaml"
浏览器访问:
http://服务器IP/swagger/
docker run -p 8080:8080 \
-e SWAGGER_JSON=/api/openapi.yaml \
-v $(pwd):/api \
swaggerapi/swagger-ui
检查:
firewall-cmd --list-ports
netstat -tunlp | grep 8080
chmod -R 755 swagger-ui
你可以直接告诉我:
我可以给你精确到版本的完整配置示例。