백엔드/트러블 슈팅

SpringBoot 3.2 버전부터 @ConfigurationProperties 사용 시 주의점

midcon 2024. 4. 3. 06:54

문제 발견

이전 글에서 @ConfigurationProperties를 써서 yml 파일에서 환경 변수 값을 불러왔다.

간만에 백엔드 프로젝트를 만들면서 적용을 하니 아래와 같은 에러 메시지와 함께 애플리케이션을 실행할 수 없었다.


문제 해결

해결을 위해 검색을 해본 결과 인프런의 영한님이 답변을 남겨주신게 있었다. 

문제는 본인이 주로 쓰던 빌드 방식인 인텔리제이 IDEA 빌드 방식에 있었다.

스프링을 처음 공부하면서 이렇게 하면 속도 측면에서 이득을 볼 수 있다고 해서 쭉 써오던 방식이었다.

 

전에 썼던 버전은 스프링부트 2점대 버전이라서 문제 없이 동작했었다.

하지만 스프링부트 3.2버전부터는 매개변수 이름 추론 방식이 바껴서 설정을 변경해야 했다.

링크를 확인하면 몇 가지 방법이 있지만 가장 간단한건 아래처럼 빌드 방식을 gradle로 바꾸는것이다.

 

이렇게 바꾸고 실행해주면 문제 없이 동작한다.

 

출처)

 

현재 SpringBoot 3.2.1 부터 @ConfigurationProperties 를 사용한 설정값 바인딩에 이슈가 있는것 같습니다. -

안녕하세요! 질문 내용은 제목과 같습니다. 스프링부트 3.2.1 부터 @ConfigurationProperties 가 동작하지 않는것 같습니다. 확실하지 않지만 스텍오버플로우에도 비슷한 이슈가 올라온 상태인것 같습니

www.inflearn.com