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" ]]; then
    shift
    java -jar /opt/swagger-codegen/v2/swagger-codegen-cli.jar "$@"
elif [[ "$1" == "--use-v3" ]]; then
    shift
    java -jar /opt/swagger-codegen/v3/swagger-codegen-cli.jar "$@"
else
    java -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

运行效果:

在线体验:Swagger Codegen在线工具 - 快速生成多语言API客户端/服务端代码 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大熊程序猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值