自定义starter yaml提示失效问题
- 自定义starter yaml提示失效问题
- 问题场景
- 解决办法
自定义starter yaml提示失效问题
问题场景
在自定义starter
后,必不可少会有properties
配置参数需要指定,而在有时又不知道为什么出现这个问题。官方 Configuration Metadata
在其它模块里导入自定义starter,编写yaml时,没有提示:
自定义starter中也添加了configuration-processor依赖:
最终定位问题,发现由于自定义annotationProcessorPaths
覆盖默认配置,导致配置提示文件spring-configuration-metadata.json
没有生成:
网上找到的解决办法(并不能解决我的问题):
- 缺少依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
- 重新build project
- 遇事不决重启(重新打开idea)
解决办法
既然已经知道是由于自定义annotationProcessPaths
,导致提示文件没有生成,那么就对症下药,添加configuration-processor
注解执行路径,重新clear
、install
:
<path>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<version>${project.parent.version}</version>
</path>
现在再回到引入starter
依赖的项目中,发现yaml提示已经恢复正常了: