Java非侵入式API接口即文档工具apigcc
一个非侵入的api编译、收集、Rest文档生成工具。工具通过分析代码和注释,获取文档信息,生成RestDoc文档
前言
程序员一直以来都有一个烦恼,只想写代码,不想写文档。代码就表达了我的思想和灵魂。
Python提出了一个方案,叫docstring,来试图解决这个问题。即编写代码,同时也能写出文档,保持代码和文档的一致。docstring说白了就是一堆代码中的注释。Python的docstring可以通过help函数直接输出一份有格式的文档,本工具的思想与此类似。
代码即文档
Apigcc是一个非侵入的RestDoc文档生成工具。工具通过分析代码和注释,获取文档信息,生成RestDoc文档。
有这样一段代码
/** * 欢迎使用Apigcc * @index 1 */ @RestController public class HelloController { /** * 示例接口 * @param name 名称 * @return */ @RequestMapping("/greeting") public HelloDTO greeting(@RequestParam(defaultValue="apigcc") String name) { return new HelloDTO("hello "+name); } }
生成文档效果
使用方式
apiggs-maven-plugin
easy use apigcc with maven
install
<plugin> <groupId>com.github.apiggs</groupId> <artifactId>apiggs-maven-plugin</artifactId> <version><!-- 替换为上方版本号 --></version> <executions> <execution> <phase>compile</phase> <goals> <goal>apiggs</goal> </goals> </execution> </executions> <configuration> <!-- options in there --> </configuration> </plugin>
when you compile source code, apiggs will build rest doc.
options
- id 项目id,生成id.html文件
- title 文档标题
- description 文档描述
- production 输出文件夹,默认为 apiggs
- out 输出目录,默认为 target
- source 源码目录
- dependency 源码依赖的代码目录,以逗号隔开
- jar 源码依赖的jar包目录,以逗号隔开
- ignore 忽略某些类型
- version 文档版本号
执行方法:
查看API文档:
另外,也可以放入容器远程访问,方法如下:
运行项目
gradlew build cd service\build\libs java -jar apigcc-hub-{version}.jar
浏览器访问 http://127.0.0.1:8080
详情请参考:apigcc
每天一点成长,欢迎指正!