前置条件是项目中已经使用swagger
一、html格式:
1.加入依赖 swagger2markup
<!-- 文档生成 -->
<dependency>
<groupId>io.github.swagger2markup</groupId>
<artifactId>swagger2markup</artifactId>
<version>1.3.1</version>
</dependency>
2.生成方式1使用Test类生成
import java.net.URL;
import java.nio.file.Paths;
import org.junit.Test;
import org.junit.runner.RunWith;
import io.github.swagger2markup.Swagger2MarkupConfig;
import io.github.swagger2markup.Swagger2MarkupConverter;
import io.github.swagger2markup.builder.Swagger2MarkupConfigBuilder;
import io.github.swagger2markup.markup.builder.MarkupLanguage;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringRunner;
@RunWith(SpringRunner.class)
@ContextConfiguration
public class ApiTest {
@Test
public void generateAsciiDocs() throws Exception {
// 输出Ascii格式
Swagger2MarkupConfig config = new Swagger2MarkupConfigBuilder()
.withMarkupLanguage(MarkupLanguage.ASCIIDOC)//格式可多选
// .withMarkupLanguage(MarkupLanguage.MARKDOWN)
.build();
Swagger2MarkupConverter.from(new URL("http://localhost:18080/v2/api-docs"))
.withConfig(config)
.build()
.toFolder(Paths.get("src/docs/asciidoc/generated"));
}
}
其中 http://localhost:18080/v2/api-docs 为你项目的swagger json文档,启动swagger后可以看到
执行后生成对应的4个文档:
目录为:
src\docs\asciidoc\generated
3.生成html
需要加入一个插件到pom.xml
<plugin>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctor-maven-plugin</artifactId>
<version>1.5.6</version>
<configuration>
<sourceDirectory>src/docs/asciidoc/generated</sourceDirectory>
<outputDirectory>src/docs/asciidoc/html</outputDirectory>
<backend>html</backend>
<sourceHighlighter>coderay</sourceHighlighter>
<attributes>
<toc>left</toc>
</attributes>
</configuration>
</plugin>
然后执行maven 使用命令:
执行完后生成html文件:里面便是Api详情。只要你swagger 里面比较规范,这里也就很规范。
好了 这是html方式。
二、另外推荐一款工具,使用showdoc
官网:https://www.showdoc.com.cn/
当然这个工具也可以下载代码部署到自己服务器,也可以使用他在线的。
注册登录--新建项目
选择导入文件:
这里我们先去访问swagger的:http://localhost:18080/xxx/v2/api-docs 并且ctrl+s保存为json格式 的文件
google游览器
然后导入到showdoc的上面的操作即可生成api文档,很方便。