官方提供的spring boot starter的配置项,我们用IDE配置的时候一般都有自动提示的,如下图所示
而我们自己自定义的配置却没有,对开发非常不友好容易打错配置, 那这个是怎样实现的呢?
IDE是通过读取配置信息的元数据而实现自动提示的,而元数据在目录 META-INF
中的 spring-configuration-metadata.json
或者 additional-spring-configuration-metadata.json
以我这个自己开发的starter中的自定义配置文件为例,如果自己手动创建这些元数据的话工作量比较大,使用 IDEA
的话有自动生成功能
在 zlt-swagger2-spring-boot-starter
工程中添加以下jar包
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId> <optional>true</optional> </dependency>
搜索 Annotation Processor
并设置 Enable annotation processing
项目在重新编译后就会自动生成 spring-configuration-metadata.json
文件
自定义的swagger配置已经能自动提示了
参考资料
https://docs.spring.io/spring-boot/docs/current/reference/html/configuration-metadata.html推荐阅读