SpringBoot(二十二)SpringBoot集成smart-doc自动生成文档

devtools/2024/11/16 10:31:59/

计划在项目中集成swagger日志框架,经过一顿折腾,发现一个小小的问题。我得springboot框架版本是2.6.13,swagger要匹配这个版本的springboot可能比较麻烦。

这可如何是好……

经跟社区的大神得讨论,他在用的文档生成工具是smart-doc。我尝试一下集成这个工具。

官网:https://smart-doc-group.github.io/

一:添加插件依赖

<!--api文档  begin-->
<plugin>
    <groupId>com.github.shalousun</groupId>
    <artifactId>smart-doc-maven-plugin</artifactId>
    <version>2.3.5</version>
    <configuration>
        <!--指定生成文档的使用的配置文件,配置文件放在自己的项目中-->
        <configFile>${basedir}/src/main/resources/smart-doc.json</configFile>
        <!--指定项目名称-->
        <projectName>smart-doc文档</projectName>
        <!--smart-doc实现自动分析依赖树加载第三方依赖的源码,如果一些框架依赖库加载不到导致报错,这时请使用excludes排除掉-->
        <excludes>
            <!--也可以支持正则式如:com.alibaba:.* -->
            <exclude>commons-jxpath:.*</exclude>
            <exclude>io.zipkin.brave:.*</exclude>
            <exclude>org.apache.kafka:.*</exclude>
            <exclude>org.springframework.kafka:.*</exclude>
            <exclude>com.netflix.servo:.*</exclude>
        </excludes>
        <!--includes配置用于配置加载外部依赖源码,配置后插件会按照配置项加载外部源代码而不是自动加载所有,因此使用时需要注意-->
        <!--smart-doc能自动分析依赖树加载所有依赖源码,原则上会影响文档构建效率,因此你可以使用includes来让插件加载你配置的组件-->
        <includes>
            <!--格式为:groupId:artifactId;参考如下-->
            <!--也可以支持正则式如:com.alibaba:.* -->
            <include>com.alibaba:fastjson</include>
        </includes>
    </configuration>
    <executions>
        <execution>
            <!--如果不需要在执行编译时启动smart-doc,则将phase注释掉-->
            <!-- <phase>compile</phase>-->
            <goals>
                <!--smart-doc提供了html、openapi、markdown等goal,可按需配置-->
                <goal>html</goal>
            </goals>
        </execution>
    </executions>
</plugin>
<!--api文档  end-->

二:创建配置文件smart-doc.json

java">{
  "serverUrl": "http://127.0.0.1",//指定后端服务访问地址
  "outPath": "src/main/resources/static/doc/api",//指定文档的输出路径,生成到项目静态文件目录下,随项目启动可以查看
  "isStrict": false,//是否开启严格模式
  "allInOne": true,//是否将文档合并到一个文件中
  "createDebugPage": false,//是否创建可以测试的html页面
  "packageFilters": "com.xxxx.aio.controller.WorkbenchController", //controller包过滤

http://www.ppmy.cn/devtools/134405.html

相关文章

梧桐数据库中的循环函数统计提升数据库性能的详细指南

梧桐数据库中的循环函数统计提升数据库性能的详细指南 引言 在现代企业级应用中&#xff0c;数据库性能的优劣直接影响着用户体验和业务效率。梧桐数据库&#xff08;WutongDB&#xff09;作为一款高性能的分布式关系型数据库&#xff0c;提供了丰富的工具和功能来帮助开发者…

DFT下release的sdc讨论

DFT下release的sdc主要包括三部分&#xff1a; 1、shift_sdc&#xff1a; 主要是检查scan_chain上寄存器q到si的timing情况&#xff1b;同时还要注意edt_logic和scan_chian之间的时序关系&#xff1b;channel_in/out或者wrap_cell_input/output的接口处的timing&#xff1b;处…

logstash grok插件语法介绍

介绍 logstash拥有丰富的filter插件,它们扩展了进入过滤器的原始数据&#xff0c;进行复杂的逻辑处理&#xff0c;甚至可以无中生有的添加新的 logstash 事件到后续的流程中去&#xff01;Grok 是 Logstash 最重要的插件之一。也是迄今为止使蹩脚的、无结构的日志结构化和可查询…

连续 Hopfield 神经网络深入探讨

连续 Hopfield 神经网络深入探讨 一、引言 人工神经网络在众多领域展现出了卓越的性能&#xff0c;连续 Hopfield 神经网络&#xff08;Continuous Hopfield Neural Network&#xff0c;CHNN&#xff09;作为其中的重要分支&#xff0c;为解决复杂的优化问题、模式识别以及联…

TCP/IP--Socket套接字--JAVA

一、概念 Socket套接字&#xff0c;是由系统提供⽤于⽹络通信的技术&#xff0c;是基于TCP/IP协议的⽹络通信的基本操作单元。 基于Socket套接字的⽹络程序开发就是⽹络编程。 二、分类 1.流套接字 使用传输层TCP协议。TCP协议特点&#xff1a;有链接、可靠传输、面向字节流…

革命性AI搜索引擎!ChatGPT最新功能发布,无广告更智能!

零、前言 大人&#xff0c;时代变了。 最强 AI 助力下的无广告搜索引擎终于问世。我们期待已久的这一刻终于到来了&#xff0c;从今天起&#xff0c;ChatGPT 正式转型为一款 AI 搜索引擎&#xff01; 北京时间 11 月 1 日凌晨&#xff0c;恰逢 ChatGPT 两岁生日&#xff0c;O…

Linux(基本使用和配置 图片+大白话)

后面也会持续更新&#xff0c;学到新东西会在其中补充。 建议按顺序食用&#xff0c;欢迎批评或者交流&#xff01; 缺什么东西欢迎评论&#xff01;我都会及时修改的&#xff01; 在这里真的很感谢这位老师的教学视频让迷茫的我找到了很好的学习视频 王晓春老师的个人空间…

远程控制步骤

当远在千里之外的朋友想求助你帮他找到他电脑上的文件、或者是给他安装软件时。但是你给他说了他又找不到&#xff0c;那么这时你就可以通过控制对方的电脑去做一系列的操作。 如何远程控制对方的电脑非常关键。 方法一&#xff08;Windows自带远程桌面功能&#xff09;&#…