개발공부/SPRING

[Troubleshooting] 인텔리제이 의존성 인식 안됨, import 빨간 줄 해결 (Spring Boot 4)

Grogrammer 2026. 9. 30. 15:06

상황 훑어보기

Kafka와 Redis를 연습하려고 start.spring.io에서 Spring Boot 4.1.1 프로젝트를 만들고, 실습까지 한 후 이틀 뒤에 프로젝트를 열었다.

그런데 프로젝트를 열자마자 클래스 파일이 빨간 줄 천지가 되었다.

오류 화면..

이상한 점은 같은 IntelliJ에서 다른 프로젝트(Spring Boot 3.5.6)는 멀쩡했다는 것이다.

그래서 처음에는 "IntelliJ 캐시가 꼬였나? 싹 지우고 다시 깔아야 하나?"라고 생각했다.😭

결론부터 말하면 원인은 IntelliJ 버전이 Spring Boot 4.1 프로젝트를 제대로 처리하지 못한 것이었고, IntelliJ를 업데이트해서 해결했다.

오늘 글에서는 여기까지 오는 과정을 순서대로 정리해보려고 한다.

항목 내용
잘 되는 프로젝트 Spring Boot 3.5.6
문제 프로젝트 Spring Boot 4.1.1 (Kafka, Redis, JPA, WebMVC)
Gradle 8.14.3
IntelliJ 2025.3.6.1 (업데이트 전)
OS macOS

해결 과정

1. 에러 메시지에 버전이 비어 있다

터미널에서 빌드해보니 이런 에러가 났다.

Could not find org.springframework.boot:spring-boot-starter-kafka:.

끝에 버전이 비어 있다는 건, 적용된 Spring Boot 버전 목록(BOM)에 이 스타터가 없다는 뜻이다.

./gradlew dependencyInsight --dependency spring-boot-starter-data-jpa --configuration compileClasspath
# → spring-boot-starter-data-jpa:3.5.6 (selected by rule)

build.gradle에는 4.1.1로 적었는데 실제로는 3.5.6이 적용되고 있었다.

spring-boot-starter-kafka, spring-boot-starter-webmvc는 Boot 4에서 새로 생긴 이름이라 3.5.6 목록에는 없다. 버전을 4.1.1로 맞추자 Gradle 쪽 에러는 사라졌다.

2. 빌드는 성공하는데 에디터만 빨간 줄

./gradlew clean compileJava
# → BUILD SUCCESSFUL

⭐️중요: 터미널 빌드가 성공하면 코드와 의존성은 정상이다. IntelliJ만의 문제로 범위가 좁혀진다.

3. IntelliJ 쪽에서 시도한 것 (모두 실패)

  • Gradle Reload
  • File > Invalidate Caches
  • .idea, .gradle, build 폴더 삭제 후 build.gradle로 다시 열기
  • IntelliJ 내부 캐시 삭제 (~/Library/Caches/JetBrains/IntelliJIdea<버전>/ 아래 프로젝트 이름 폴더)

💡 .idea를 지워도 IntelliJ는 위 경로에 프로젝트별 캐시를 따로 저장해둔다는 것도 이번에 알게 됐다.

4. 결정적인 실험: 새 프로젝트 만들어보기

IntelliJ에서 깨끗한 Spring Boot 4.1.1 프로젝트를 새로 만들고 Kafka import를 적어봤다.

새 프로젝트도 빨간 줄이었다.

  • 새 프로젝트도 안 된다 → 기존 프로젝트의 설정이나 캐시 문제가 아니다
  • Boot 3.x 프로젝트는 된다 → IntelliJ 전체가 망가진 것도 아니다
  • 남은 결론 → 이 IntelliJ 버전이 Boot 4.1을 따라가지 못한다

5. IntelliJ 업데이트 → 해결

IntelliJ IDEA > Check for Updates...로 최신 버전으로 업데이트하고 Gradle Reload를 하니 빨간 줄이 전부 사라졌다. 🎉

(메이저 업데이트 시 기존 설정·플러그인을 가져올 수 있어서 다시 설정할 것은 거의 없다.)


왜 이런 일이 생겼을까

공식적으로 밝혀진 원인은 아니고, 상황을 바탕으로 한 추론이다.

Spring Boot 4는 자동 설정이 기술별 모듈로 쪼개지고 스타터 이름도 바뀐 큰 변화가 있었다. 프레임워크가 먼저 바뀌고 IDE가 뒤따라 지원하는 구조라서, 새 구조를 반영하지 못한 IDE 버전에서는 이런 일이 생길 수 있다.

  • Gradle은 새 구조를 알고 있다 → 빌드 성공
  • 구버전 IntelliJ는 에디터에 classpath를 제대로 붙이지 못한다 → 빨간 줄
  • Boot 3.x는 익숙한 구조다 → 정상 동작

마무리

포인트 한 줄 정리
버전 없는 에러 ...:.처럼 버전이 비어 있으면 적용된 Spring Boot 버전부터 확인
범위 좁히기 터미널 빌드가 성공하면 IDE 문제
대조 실험 새 프로젝트에서도 재현되면 프로젝트가 아니라 환경 문제
해결 새 메이저 버전 프레임워크를 쓸 땐 IDE도 최신으로

캐시를 이것저것 지우기 전에 "새 프로젝트에서도 그런가?"를 먼저 확인했다면 훨씬 빨리 끝났을 것 같다.