[문제 해결] cannot find symbol 오류 해결/build clean

케이덕·2024년 3월 9일

"cannot find symbol" 오류를 검색하면, 원인이 컴파일러가 해당 클래스, 변수 등을 찾지 못해서 발생하는 오류라는 것을 알 수 있다.

원인을 만들어내는 두 가지 주요 실수

  1. 함수 이름이나 변수 이름, 예약어 등의 식별자를 잘못 쓴 경우, (Spring을 String이라고 쓰거나, 대소문자를 바꾸어 쓰거나) 가장 많이 발생.
  2. import를 선언하지 않고 그 파일에 있는 것을 가져다 썼을 때 (import java.io로 쓸 수 있는 array, list 등의 기능이나, 내가 다른 파일에 인터페이스등을 정의해놓고 그 파일을 import하지 않은 경우, 컴파일러가 당연히 찾아서 실행시킬 수 없다)

그러나 나의 경우에는 두 가지를 모두 꼼꼼히 확인했는데도 불구하고 해결되지가 않았다.. (JDK의 버전을 수정해보기도 하고, 완성본 코드가 올라와있는 것을 그대로 복사해왔는데도,,)

허무하게도 해결 방법은 Gradle의 캐시를 clean해주는 것이었다.

간혹 코드가 정말 문제 없어도, 이 전에 빌드했던 캐시가 계속 남아있어 제대로 된 코드에도 오류 메세지를 띄운다.

Build Clean 해결 방법

  1. IntelliJ 우측에 있는 Gradle 아이콘을 클릭해준다.
  2. 보이는 디렉토리 중, /Task/build/clean을 클릭해준다.
  3. 이후 다시 원하는 작업을 실행한다.

해결!!

profile
떨떠름하게 성공하는 게 목표

0개의 댓글