当前位置: 首页 > news >正文

ali linux 上安装swagger-codegen

安装Java环境(如果已经安装可跳过)

sudo yum install -y java-11-openjdk-devel

同时维护 2.x 和 3.x 版本可确保完美兼容两种规范:

# 创建安装目录
sudo mkdir -p /opt/swagger-codegen/{v2,v3}
sudo chown -R ${USER}:${USER} /opt/swagger-codegen
cd /opt/swagger-codegen# 下载 2.x 版本 (支持 Swagger 2.0)
wget https://repo1.maven.org/maven2/io/swagger/swagger-codegen-cli/2.4.34/swagger-codegen-cli-2.4.34.jar -P v2/
mv v2/swagger-codegen-cli-*.jar v2/swagger-codegen-cli.jar# 下载 3.x 版本 (支持 OpenAPI 3.0)
wget https://repo1.maven.org/maven2/io/swagger/codegen/v3/swagger-codegen-cli/3.0.46/swagger-codegen-cli-3.0.46.jar -P v3/
mv v3/swagger-codegen-cli-*.jar v3/swagger-codegen-cli.jar

创建版本切换脚本

# 创建主控制脚本
sudo tee /usr/local/bin/swagger-codegen <<'EOF'
#!/bin/bash
DEFAULT_VERSION="v3"  # 设置默认版本if [[ "$1" == "--use-v2" ]]; thenshiftjava -jar /opt/swagger-codegen/v2/swagger-codegen-cli.jar "$@"
elif [[ "$1" == "--use-v3" ]]; thenshiftjava -jar /opt/swagger-codegen/v3/swagger-codegen-cli.jar "$@"
elsejava -jar /opt/swagger-codegen/$DEFAULT_VERSION/swagger-codegen-cli.jar "$@"
fi
EOF# 添加执行权限
sudo chmod +x /usr/local/bin/swagger-codegen

验证双版本支持

-----服务端-----
# 测试 Swagger 2.0 规范生成
swagger-codegen --use-v2 generate \-i https://petstore.swagger.io/v2/swagger.json \-l aspnetcore \-o /tmp/petstore-v2# 测试 OpenAPI 3.0 规范生成
swagger-codegen --use-v3 generate \-i https://petstore3.swagger.io/api/v3/openapi.json \-l aspnetcore \-o /tmp/petstore-v3-----客户端-----
# 测试 Swagger 2.0 规范生成
swagger-codegen --use-v2 generate \-i https://petstore.swagger.io/v2/swagger.json \-l csharp-dotnet2 \-o /tmp/client-petstore-v2# 测试 OpenAPI 3.0 规范生成
swagger-codegen --use-v3 generate \-i https://petstore3.swagger.io/api/v3/openapi.json \-l csharp-dotnet2 \-o /tmp/client-petstore-v3# 检查生成结果
ls /tmp/petstore-v2 /tmp/petstore-v3
ls /tmp/client-petstore-v2 /tmp/client-petstore-v3

查看各版本帮助

swagger-codegen --use-v2 help
swagger-codegen --use-v3 help

语言支持差异

# 列出 v2 支持的语言
swagger-codegen --use-v2 langs# 列出 v3 支持的语言
swagger-codegen --use-v3 langs

运行效果:

 

http://www.dtcms.com/a/285741.html

相关文章:

  • Windows发现可疑的svchost程序
  • 深度理解 KVM:Linux 内核系统学习的重要角度
  • 【Linux】环境基础与开发工具的使用
  • Linux中的LVS集群技术
  • MySQL的基本操作及相关python代码
  • 基于极空间NAS+GL-MT6000路由器+Tailscale的零配置安全穿透方案
  • 云原生 DevOps 实战之Jenkins+Gitee+Harbor+Kubernetes 构建自动化部署体系
  • 小白学Python,网络爬虫篇(2)——selenium库
  • 图机器学习(13)——图相似性检测
  • 信息学奥赛一本通 1575:【例 1】二叉苹果树 | 洛谷 P2015 二叉苹果树
  • 短视频矩阵系统哪家好?全面解析与推荐
  • 香港服务器SSH安全加固方案与密钥认证实践
  • Flutter权限管理终极指南:实现优雅的Android 48小时授权策略
  • GLU 变种:ReGLU 、 GEGLU 、 SwiGLU
  • android 信息验证动画效果
  • 精通 triton 使用 MLIR 的源码逻辑 - 第002节:再掌握一些 triton 语法 — 通过 02 softmax
  • 续签人员李权
  • 掌上医院微信小程序平台如何对接医保在线支付?
  • vue自定义指令bug
  • poi-excel-添加水印
  • Vue3 学习教程,从入门到精通,Vue3 项目打包语法知识点及案例代码(9)
  • Windows Server 版本之间有什么区别?
  • 私有服务器AI智能体搭建配置选择记录
  • NGFW服务器安全防护
  • 浏览器信息隔离全指南:从多账号管理到隐私防护
  • VirtualBox + CentOS:启用 DHCP 获取 IPv4 地址
  • 数据结构:顺序表和链表
  • 【PTA数据结构 | C语言版】斜堆的合并操作
  • Expression.Block详解
  • 微信小程序商品结算功能