一、背景
官方提供的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
推薦閱讀