
一、背景
官方提供的spring boot starter的配置项,我们用IDE配置的时候一般都有自动提示的,如下图所示

而我们自己自定义的配置却没有,对开发非常不友好容易打错配置,那这个是怎样实现的呢?
?
二、提示原理
IDE是通过读取配置信息的元数据而实现自动提示的,而元数据在目录Meta-INF 中的spring-configuration-Metadata.json 或者 additional-spring-configuration-Metadata.json
?
三、实现自动提示
以我这个自己开发的starter中的自定义配置文件为例,如果自己手动创建这些元数据的话工作量比较大,使用IDEA 的话有自动生成功能

?
3.1. 引入依赖spring-boot-configuration-processor
在zlt-swagger2-spring-boot-starter 工程中添加以下jar包
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
?
3.2. 修改IDEA配置
搜索Annotation Processor 并设置Enable annotation processing

?
3.3. 重新编译项目
项目在重新编译后就会自动生成spring-configuration-Metadata.json 文件

?
四、测试
自定义的swagger配置已经能自动提示了

? 参考资料 https://docs.spring.io/spring-boot/docs/current/reference/html/configuration-metadata.html
? 推荐阅读
- 日志排查问题困难?分布式日志链路跟踪来帮你
- zuul集成Sentinel最新的网关流控组件
- 阿里注册中心Nacos生产部署方案
(编辑:北几岛)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|