一、背景
官方提供的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生産部署方案