smart-doc 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
smart-doc 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
smart-doc 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
smart-doc 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
smart-doc 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !
授权协议 Apache-2.0
开发语言 Java
操作系统 跨平台
软件类型 开源软件
开源组织
地区 国产
投 递 者 上官胡闹
适用人群 未知
收录时间 2018-08-23

软件简介

smart-doc是一款同时支持JAVA REST API和Apache Dubbo RPC接口文档生成的工具,smart-doc在业内率先提出基于JAVA泛型定义推导的理念, 完全基于接口源码来分析生成接口文档,不采用任何注解侵入到业务代码中。你只需要按照java-doc标准编写注释, smart-doc就能帮你生成一个简易明了的Markdown、Postman Collection2.0+、OpenAPI 3.0+的文档。除此之外smart-doc还支持生成漂亮简洁可调试的html5页面文档。

功能特性

  • 支持生成可直接调试接口的文档页面(文件上传、下载也支持)。
  • 零注解、零学习成本、只需要写标准java注释。
  • 基于源代码接口定义自动推导,强大的返回结构推导。
  • 支持Spring MVC、Spring Boot、Spring Boot Web Flux(controller书写方式)、Feign。
  • 支持Callable,Future,CompletableFuture等异步接口返回的推导。
  • 支持JavaBean上的JSR303参数校验规范、支持分组校验。
  • 对json请求参数的接口能够自动生成模拟json参数。
  • 对一些常用字段定义能够生成有效的模拟值。
  • 支持生成json返回值示例。
  • 支持从项目外部加载源代码来生成字段注释(包括标准规范发布的jar包)。
  • 支持生成多种格式文档:Markdown、HTML5、Asciidoctor、Postman collection 2.0+、Open Api 3.0 +。
  • 轻易实现在Spring Boot服务上在线查看静态HTML5文档,支持debug调试接口。
  • 开放文档数据,可自由实现接入文档管理系统。
  • 支持生成Postman Collection数据一键到入到Postman测试接口,参数值默认帮你填好。
  • 从1.8.0版本全面支持json和表单请求解析。
  • 一款代码注释检测工具,不写注释的小伙伴逃不过法眼了。
  • 支持导出错误码和定义在代码中的各种枚举字典码到接口文档。
  • Maven、Gradle插件化支持,使用极其简单(推荐使用插件)。
  • Apache Dubbo RPC接口文档生成支持。

官方推荐方案

smart-doc + Torna 组成行业领先的文档生成和管理解决方案,使用smart-doc无侵入完成Java源代码分析和提取注释生成API文档,自动将文档推送到Torna企业级接口文档管理平台

smart-doc+torna

smart-doc+Torna文档自动化

知名用户

  • 一加【oneplus】

  • 科大讯飞

  • 小米

Markdown工具推荐

      smart-doc目前能够支持将文档合并到一个Markdown文件,因此你可以使用Typora工具将Markdown转换成pdf、word或者是html文档。

相关文档

smart-doc官方wiki:https://gitee.com/smart-doc-team/smart-doc/wikis/Home

Demo

demo地址:https://gitee.com/devin-alan/api-doc-test

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (19)

加载中
支持自定义接口说明模板么?
02/23 08:25
回复
举报
现在支持自定义注解吗?比如我在接口上定义了一个@APIDemo,希望被这个注解注释的接口能生成接口文档
2020/12/22 19:37
回复
举报
上官胡闹软件作者
注解本身有很多的附带含义,而这些附带都是需要解析的,所以是没办法,对于企业自己做框架封装的建议自己基于smart-doc源码去内部适配。开源版本我们肯定只满足大众化框架。
2020/12/23 09:54
回复
举报
打分: 力荐
真香
2020/09/23 16:22
回复
举报
请问依赖的jar从哪下载?是需要自己编译吗
2020/07/22 18:12
回复
举报
上官胡闹软件作者
我们是发布到maven中央仓库,配置好maven就可以用了
2020/08/03 09:43
回复
举报
你的demo启动失败,麻烦以后写demo,不要加乱七八糟的东西,很乱,只有你们自己能看明白在短时间
2020/07/06 20:23
回复
举报
上官胡闹软件作者
你可能对这个理解有错误,这不是用来启动的啊,这个是我们写来扫描各种代码样例的,本身不是基于运行生成文档的
2020/07/07 19:26
回复
举报
对代码规范要求太高了
2020/05/11 10:08
回复
举报
上官胡闹软件作者
其实也不高,代码规范了更方便维护
2020/05/11 18:25
回复
举报
有最佳实践吗,怎么用比较好
2020/05/11 18:28
回复
举报
最好能从javadoc中提取参数,返回值,和Exception等。
2019/11/07 10:49
回复
举报
打分: 推荐
不错
2018/09/03 16:34
回复
举报
打分: 力荐
加油
2018/08/30 09:51
回复
举报
swagger虽然耦合很严重,但是这个也直接避免了一些懒惰的开发人员改接口不改注释的习惯。如果纯javadoc优点是0侵入和耦合,但是缺点是一些懒惰的开发人员可能会漏掉。
2018/08/28 20:15
回复
举报
更多评论
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表于软件架构专区
2019/11/18 17:44

使用smart-doc,一键controller生成文档--团队自用

**1.导入包** ``` com.github.shalousun smart-doc 1.7.6 test org.springframework.boot spring-boot-starter-test test ``` **2.在test目录下添加测试类** ``` package com.bys.emenu.web; import com.bys.emenu.EmenuWebApplication; import com.power.common.util.DateTimeUtil; import com.power.doc.builder.ApiDocBuilder; import com.power.doc.constants.DocGlobalConstants; import com.power.doc.model.*; import or...

0
0
发表于开发技能专区
2020/07/02 06:22

开源API文档工具- swagger2 与 smart-doc 比较 与 使用

工具开源地址 swagger2 : https://swagger.io/ smart-doc: https://www.oschina.net/p/smart-doc 国产 两者的比较 swagger2 和 smart-doc 两个开源工具 都可以 使用jar包 生成 api 文档。 相同点: 这个两个工具 都可以 自动 扫描 有 @Controller 注解的 类 并生成 相应的 api 接口文档。都可以生成 静态网页,提供在线api html 页面的访问。 区别: 1、swagger2相对 功能多一点,它不仅能 生成 文档 ,而且还可以 提供在线测试...

0
0
2020/07/11 22:11

Springboot2.X + Smart-doc快速构建接口文档工具(75)

1、设置方法注释 首先每个人都应该拥有写注释的规范,IDEA设置如下: 接口统一规范 /** * * @author mujiutian * @date $DATE$ $TIME$ * @param $params$ */ 2、pom依赖添加插件 <plugin> <groupId>com.github.shalousun</groupId> <artifactId>smart-doc-maven-plugin</artifactId> <version>1.1.0</version> <configuration> <!--指定生成文档的使用的配置文件,配置文件放在自己的项目中...

0
0
发表了博客
2019/03/19 11:39

Go Doc文档

Go为我们提供了快速生成文档和查看文档的工具,很容易编写查看代码文档。在项目协作过程中,可以帮助我们快速理解代码。 <br/> 查看文档方式有两种:一种是通过终端查看,使用go doc命令,一种是通过网页查看,使用godoc命令 <br/> 通过终端查看文档 go doc命令 $ go doc help usage: go doc [-u] [-c] [package|[package.]symbol[.method]] 可以看到,go doc接受的参数,可以是包名,也可以是包里的结构、方法等,默认为显示当...

0
0
发表了博客
2019/05/09 15:31

Docker DOC

Docker DOC docker是提供给开发或管理人员的容器化部署项目工具 在linux上运行docker 常用命令 docker 安装 #先更新yum yum update; #设置docker仓库 tee /etc/yum.repos.d/docker.repo <<-'EOF' [dockerrepo] name=Docker Repository baseurl=https://yum.dockerproject.org/repo/main/centos/$releasever/ enabled=1 gpgcheck=1 gpgkey=https://yum.dockerproject.org/gpg EOF #安装docker yum install docker #模糊查询docke...

0
0
发表了博客
2019/04/28 14:59

[dev] Go语言查看doc与生成API doc

类似与javadoc,go也可以自动生成doc文档。 方法有两个: 1. 使用go doc工具 可以查看它的详细文档: go help doc 示例: 在这个目录下,我创建一个api包 ╰─>$ pwd /home/tong/Src/go/src/local/test/api/api.go 代码是这样的: package api import "fmt" type TestApi struct { var1 int var2 int var3 string Var4 int Var5 string } func (p *TestApi) internalFunc() { fmt.Pri...

0
0
发表了博客
2016/12/28 15:39

doc命令

echo off 是关掉 命令行的 显示信息的. @是关闭 当前命令行的 显示信息,如@dir d:,则不显示dir这个命令. @echo off 就是结合起来用的,关掉命令行的显示信息,同时也不显示echo off这条命令的信息.. set PATH=C:\ProgramFiles\Java\jdk1.7.\bin;C:\WINDOWS;C:\WINDOWS\COMMAND set classpath=.;C:\Program Files\Java\jdk1.7.0\lib\tools.jar;C:\Program %1 %2 @echo off echo 当前盘符:%~d0 echo 当前盘符和路径:%~dp0 echo 当...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
19 评论
270 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部