Web Development
[SpringBoot] jakarta.validation 관련 Cannot resolve symbol 'validation' 오류 발생 원인과 해결 방법
jungh150c
2025. 3. 26. 17:37
문제 상황
ExceptionAdvice.java 파일을 작성하는 도중에 오류가 났다.

Cannot resolve symbol 'validation' 이라고 뜨면서 빨간색으로 표시된다.
분명 다른 프로젝트에서 정상적으로 사용하던 걸 그대로 복붙한건데 왜 오류가 나는걸까?
원인
찾아보니 Spring Boot 2.2.x 버전 이하까지는 spring-boot-starter-web 안에 Validation 포함되어 있었지만 2.3.x 버전 이상부터는 spring-boot-starter-web와 분리되었다고 한다. 그래서 직접 추가해주어야 한다.
해결 방법

build.gradle 파일에서 war 플러그인을 추가해준다.

그 후 build.gradle 파일에서 dependencies에서 위의 코드를 추가해준다.
이렇게 하니 해결되는 것을 확인할 수 있었다.
P.S.
그 후에 버전 충돌 문제 때문에 아래와 같이 수정했는데, 별 문제 없이 validation이 잘 import 되었다. 그러면 처음부터 버전 문제였던 걸까?

[참고]