V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
smartdoc647
V2EX  ›  Java

smart-doc Java 零侵入 API 文档生成 2.7.2 发布

  •  
  •   smartdoc647 · 2023-07-10 09:56:13 +08:00 · 929 次点击
    这是一个创建于 508 天前的主题,其中的信息可能已经有所发展或是发生改变。

    smart-doc 是一款同时支持 JAVA REST API 和 Apache Dubbo RPC 接口文档生成的工具,smart-doc 利用接口泛型和 javadoc 注释自动分析生成 api 接口文档,不采用任何注解侵入到业务代码中。只需要在项目中引入 smart-doc 提供的 maven 或者是 gradle 插件,然后按照规范写好 javadoc 注释即可生成 api 文档。同时 smart-doc 也支持生成 openapi 和 postman 这些规范的文档,生成后可以直接导入相关工具做测试。

    仓库地址

    https://github.com/smart-doc-group/smart-doc

    Features

    • 零注解、零学习成本、只需要写标准 JAVA 注释。
    • 基于源代码接口定义自动推导,强大的返回结构推导。
    • 支持 Spring MVC 、Spring Boot 、Spring Boot Web Flux(controller 书写方式)、Feign 。
    • 支持 JAX-RS 实现的 WEB 框架,例如 Quarkus 。
    • 支持 Callable 、Future 、CompletableFuture 等异步接口返回的推导。
    • 支持 JavaBean 上的 JSR303 参数校验规范,包括分组验证。
    • 对 JSON 请求参数的接口能够自动生成模拟 JSON 参数。
    • 对一些常用字段定义能够生成有效的模拟值。
    • 支持生成 JSON 返回值示例。
    • 支持从项目外部加载源代码来生成字段注释(包括标准规范发布的 jar 包)。
    • 支持生成多种格式文档:Markdown 、HTML5 、Asciidoctor 、Postman Collection 、OpenAPI 3.0 。Up- 开放文档数据,可自由实现接入文档管理系统。
    • 支持导出错误码和定义在代码中的各种字典码到接口文档。
    • 支持 Maven 、Gradle 插件式轻松集成。
    • 支持 Apache Dubbo RPC 接口文档生成。

    更新内容

    1. 支持无源代码下的范型解析,#539
    2. 修复[2.6.9, 2.7.1]版本 dubbo rpc 重复生成接口文档 bug 。#531
    3. 修改不通类方法接口同名时归档错误问题,#531
    4. torna 增加 version 推送,#535
    5. 删除自定义 @required tag ,@ignore tag 不在支持字段忽略。使用 jsr 规则替代。

    从此支持无源代码下的范型解析后,smart-doc 目前的易用度变得非常高。

    发展情况

    smart-doc 开源维护接近五年,目前很多功能已经非常稳定,国内有很多的用户。码云 star 3k+,github star 1k+ 。smart-doc 官方布道的企业级文档管理系统 torna 的 docker 镜像下载量超过 10k 。国内已有数家知名司在使用 smart-doc ,如:科大讯飞、小米、一加、顺丰、马蜂窝、同程旅行等。smart-doc+torna 的整套 API 管理体系已经被很多公司落地使用。smart-doc 目前也是 java 领域国内除了 swagger 外被使用最多的 API 文档生成工具,覆盖的用例最前全面,最新的版本几乎不易在使用中报错。

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2662 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 01:46 · PVG 09:46 · LAX 17:46 · JFK 20:46
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.