반응형
문제
@ConfigurationProperties 테스트 중에 IntelliJ가 "Spring Boot Configuration Annotation Processor not configured" 경고 문구를 띄워줬다.
경고 문구가 있어도 실행엔 문제는 없다. 근데 거슬린다.
원인
원인을 찾아보니 여기서 찾을 수 있었다.
spring-boot-configurtation-processor를 이용하면 쉽게 @ConfigurationProperties를 사용할 수 있다고 추천해주려고 경고를 띄워주는 거 같다.
해결책
build.gradle의 dependencies에 spring-boot-configurtation-processor를 추가해주자.
annotationProcessor("org.springframework.boot:spring-boot-configuration-processor")
kapt("org.springframework.boot:spring-boot-configuration-processor")
gradle build하고 다시 보면
와 같이 나온다. 그냥 꺼주자.
추가
spring-boot-configurtation-processor를 추가하면 어떤 걸 할 수 있는지 찾아봤다.
@ConfigurationProperties 어노테이션에만 반응한다.
@ConstructorBinding
@ConfigurationProperties(prefix = "user")
class ServerProperties(
val name: String,
val password: String
)
위와 같이 클래스를 만든 후 gradle kaptKotlin 그래들 명령어를 실행 시켜주면
{
"groups": [
{
"name": "user",
"type": "com.example.demo.ServerProperties",
"sourceType": "com.example.demo.ServerProperties"
}
],
"properties": [
{
"name": "user.name",
"type": "java.lang.String",
"sourceType": "com.example.demo.ServerProperties"
},
{
"name": "user.password",
"type": "java.lang.String",
"sourceType": "com.example.demo.ServerProperties"
}
],
"hints": []
}
위와 같은 파일이 생겨난다.
위 파일이 생성되면 아래와 같이 yml 파일에 자동완성이 가능해진다.
반응형
'Spring' 카테고리의 다른 글
[Spring] RestTemplate vs WebClient 어떤 걸 써야 할까? (0) | 2023.02.14 |
---|---|
[Spring] Maintenance Mode란? (0) | 2023.02.14 |
[Spring] properties 가져오기 (2) - 4가지 방법으로 읽어오기 (0) | 2023.02.10 |
[Spring] properties 가져오기 (1) - 종류, 우선순위 (0) | 2023.02.10 |
[Spring] MissingKotlinParameterException을 ExceptionHandler로 처리 하는 방법 (0) | 2023.01.15 |
댓글