千家信息网

如何通过OpenAPI生成Java API jar包并上传到私有仓库

发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,本篇内容主要讲解"如何通过OpenAPI生成Java API jar包并上传到私有仓库",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何通过OpenAPI
千家信息网最后更新 2025年02月01日如何通过OpenAPI生成Java API jar包并上传到私有仓库

本篇内容主要讲解"如何通过OpenAPI生成Java API jar包并上传到私有仓库",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何通过OpenAPI生成Java API jar包并上传到私有仓库"吧!

目的

通过OpenAPI格式定义的接口信息,生成SpringBoot Reactive接口Jar包,并上传到私有仓库

环境交待

开发工作IDEA 构建工具Gradle 接口定义OpenAPI 3.0.0 Java版本 JDK11 SpringBoot版本 2.1.7.RELEASE

实施

根据OpenAPI接口生成SpringBoot Reactive接口Java类

这里使用Gradle中的第三方插件来将OpenAPI接口生成Java接口

plugins {    // Gradle第三方插件,可通过swagger接口文档生成代码    id "org.hidetake.swagger.generator" version "2.18.1"}

同时引入依赖openapi-generator-cli

dependencies {    // 以下swaggerCodegen,三选一    // swaggerCodegen 'io.swagger:swagger-codegen-cli:2.4.2'             // Swagger Codegen V2    // swaggerCodegen 'io.swagger.codegen.v3:swagger-codegen-cli:3.0.5'  // or Swagger Codegen V3    swaggerCodegen 'org.openapitools:openapi-generator-cli:3.3.4'     // or OpenAPI Generator}

配置OpenAPI yaml文件位置

// 代码生成,api定义yaml配置swaggerSources {    buddie {        // 指定api yaml文件        inputFile = file("$projectDir/src/main/resources/swagger/openApi.yaml")    }}

指定swagger生成代码的配置文件

// 代码生成,api定义yaml配置swaggerSources {    buddie {        // 指定api yaml文件        inputFile = file("$projectDir/src/main/resources/swagger/openApi.yaml")        code {            // 指定生成代码的类型            language = 'spring'            // 指定生成代码时的个性化配置文件            configFile = file("$projectDir/src/main/resources/swagger/config.json")        }    }}

在config.json文件中指定了代码生成的包名,所使用的库,是否支持Reactive,各种路径,及指定Java类型的转换等

{  "library": "spring-boot",  "dateLibrary": "java8",  "reactive": true,  "hideGenerationTimestamp": true,  "modelPackage": "cn.buddie.demo.api.model",  "apiPackage": "cn.buddie.demo.api.controller",  "invokerPackage": "cn.buddie.demo.api",  "java8": true,  "configPackage": "cn.buddie.demo.api.configuration",  "useBeanValidation": true,  "interfaceOnly": true,  "typeMappings": {    "OffsetDateTime": "Instant"  },  "importMappings": {    "java.time.OffsetDateTime": "java.time.Instant"  }}

将生成的接口代码类,打包、上传

这里使用Gradle官方插件maven-publish,同时引入java插件

plugins {    id 'java'    // Gradle官方插件,用来发布jar包    id "maven-publish"}

同时引入SpringBoot,Springfox-Swagger包等

dependencies {    // 引入spring-boot-starter-webflux:2.1.x版本,以支持reactive,打包时需要    implementation('org.springframework.boot:spring-boot-starter-webflux:2.1.7.RELEASE')    // 引入springfox-swagger2,以支持swagger生成的接口,打包时需要    implementation("io.springfox:springfox-swagger2:2.9.2")}

配置发布jar包到指定私有仓库

// 发布jar包publishing {    publications {        maven(MavenPublication) {            //指定group/artifact/version信息,可以不填。默认使用项目group/name/version作为groupId/artifactId/version            //artifactId = rootProject.name            //如果是war包填写components.web,如果是jar包填写components.java            from components.java        }    }    // 不配置repositories,会发布到本地maven仓库    repositories {        maven {            //指定要上传的maven私服仓库            url = "http://localhost:8081/repository/maven-releases/"            //认证用户和密码            credentials {                username 'admin'                password 'buddie'            }        }    }}

到此,相信大家对"如何通过OpenAPI生成Java API jar包并上传到私有仓库"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

生成 接口 代码 仓库 配置 文件 私有 插件 代码生成 同时 版本 支持 信息 内容 官方 第三方 类型 学习 实用 更深 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 太仓电子网络技术费用是多少 日本软件开发工作经验 碳十四数据库 网络技术公司怎么免房产税 闵行区视频系统服务器 单位内网违反网络安全法 兴安社区网络安全 人渣如何自己开服务器和朋友玩 杭州棋牌游戏软件开发公司 互联网大会中国黑科技 网络安全所面临的主要问题 南阳博远网络技术有限公司 软件开发的重点难点 汇聚花生互联网科技有限公司 交警系统软件开发公司 徐汇区智能网络技术质量服务 数据库管理技术有哪三个阶段 数据库试卷含答案 网络安全事件的发展趋势 查询数据库日志 什么叫网络安全不达标 网络安全日志跟踪诊断 好的云服务器加盟平台 开源信息网络技术有限公司 上位机软件开发配置文件怎么保存 阴阳师为什么老是连接不上服务器 农行k宝驱动连接服务器失败 江苏直销软件开发公司排名 长子县网络安全宣传 图数据库排行榜
0