spring boot rest接口自动生成文档(包含swagger)--gradle 下的配置

    之前写过一篇文章:spring boot rest接口自动生成文档(包含swagger),这个使用的是maven作为依赖管理工具,现在,让我们体验一下gradle在spring boot项目中如何配置的:

    插件配置:

plugins {
    id 'io.franzbecker.gradle-lombok' version '1.13'
    id "com.webcohesion.enunciate" version "2.10.1"
}

 一般情况下lombok插件和enunciate一起使用,为了让lombok的类也能在此插件下生成文档,我们还必须配置一gradle脚本所需要的插件下(此插件官方提供了新的支持见https://github.com/stoicflame/enunciate/wiki/Lombok):

dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
        classpath 'com.webcohesion.enunciate:enunciate-lombok:2.10.1'

    }

    

为了编译的时候,自动生成文档,且服务启动时,作为静态网页访问,我们还需要配置一下生成的文档路径:

tasks.enunciate {
    File enunciateDistDir = file("src/main/resources/static/docs/api")
    doFirst {
        project.delete("build/enunciate")
        enunciateDistDir.deleteDir()
        enunciateDistDir.mkdirs()
    }
    export("docs", enunciateDistDir)
}


assemble {
    doFirst {
        enunciate.execute()
    }
}

此任务:

tasks.enunciate {
    File enunciateDistDir = file("src/main/resources/static/docs/api")
    doFirst {
        project.delete("build/enunciate")
        enunciateDistDir.deleteDir()
        enunciateDistDir.mkdirs()
    }
    export("docs", enunciateDistDir)
}

是为了把文档copy到spring boot约定的目录下。


此任务:

assemble {
    doFirst {
        enunciate.execute()
    }
}

是为了gradle build 的时候自动执行自动文档copy任务。



 就这么简单,和maven插件一样,用起来也都很方便。


具体例子:见https://github.com/sdcuike/gradle-learning/tree/enunciate文档自动生成-集成lombok


注意:为了让文档生成的更好,我们建议多使用java doc写文档,方法参数和返回值,要用具体的类型或泛型,这样生成的文档才具有实用价值,如果你的java知识还停留在java支持泛型以前,可能参数或者返回值大多是Object类型或map类型,这样,对于会造成代码的可读性会大大降低,而且文档自动生成,也没什么意义。



    


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Dreamer who

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值