这是一个分析Spring项目中的Java源代码(注释)以及class文件生成OpenAPI接口文档的工具.
- 提供集中式的接口文档管理工具(集成Swagger-UI,Swagger-Editor)。
- 分析注释生成OpenAPI接口文档,无需Swagger注解。
- 支持分析Maven外部源代码Jar文件。
- 提供Maven插件用于项目集成。
- 支持生成Markdown文档。
- 支持OpenAPI校验。
- 编译成docker镜像
cd openapi-ui mvn compile jib:buildTar
- 导入docker镜像
docker image load -i target/jib-image.tar
- 配置运行
docker-compose参考
docker run --rm -ti -e SYSTEM_NAME="XXX系统接口文档" -p 8080:80/tcp hnvmns/openapi-ui:0.0.2
version: "2.4" services: test: image: hnvmns/openapi-ui:0.0.2 restart: always ports: - 9000:80/tcp volumes: - /data/app/apidoc/test/data:/data - /data/app/apidoc/test/history:/history mem_limit: "1024M" environment: SYSTEM_NAME: "XXX系统接口文档"
- 打开浏览器访问主页:http://localhost:8080/doc/
- 加入插件坐标
<plugin> <groupId>com.hngd.tool</groupId> <artifactId>codegen-maven-plugin</artifactId> <version>2.6.0-SNAPSHOT</version> <configuration> <!-- controller类所在包名称 --> <packageFilter>com.hngd.web.controller</packageFilter> <!-- 配置生成openapi文档的基础信息配置文件所在位置 <confFilePath>${project.basedir}/build-config/openapi.json</confFilePath> --> <!--OpenAPI UI 服务地址,配置后接口文档将自动上传到该服务 --> <openAPIUIServer>localhost:8080</openAPIUIServer> <!-- 源码分析排除路径 --> <excludes>**/com/hngd/model/*Example.java,**/com/hngd/dao/*.java</excludes> <!-- 源码分析包含路径 --> <includes>**/com/hngd/**/*.java,com/hngd/**/*.java</includes> <!-- openapi接口基础地址 --> <openAPIServerURL>https://localhost:8080/api</openAPIServerURL> </configuration> </plugin>
- 生成接口文档并上传到接口文档管理工具
mvn compile codegen:openapi
- 在目录${basedir}/target/openapi下可以看到输出的openapi json文档