개발/IntelliJ

Lombok 적용 안될때

함수형 인간 2025. 3. 9. 03:05

IntelliJ IDEA에서 Lombok이 인식되지 않는 문제를 해결하기 위한 단계별 가이드

1. Lombok 플러그인 설치 및 활성화 확인

  • 플러그인 설치:
    1. IntelliJ IDEA에서 파일(File) > 설정(Settings) > 플러그인(Plugins)으로 이동.
    2. 마켓플레이스(Marketplace) 탭에서 "Lombok"을 검색.
    3. "Lombok" 플러그인을 찾아 설치(Install) 버튼을 클릭.
    4. IntelliJ IDEA를 재시작.
  • 플러그인 활성화 확인:
    1. 설정(Settings) > 플러그인(Plugins) > 설치됨(Installed) 탭으로 이동.
    2. "Lombok" 플러그인이 체크되어 활성화되어 있는지 확인합니다. 체크되어 있지 않다면 체크.

2. 어노테이션 처리(Annotation Processing) 활성화

  •  IntelliJ가 Lombok 어노테이션을 처리하려면 어노테이션처리(Annotation Processing)가 활성화되어 있어야 한다.
    1. 파일(File) > 설정(Settings) > 빌드, 실행, 배포(Build, Execution, Deployment) > 컴파일러(Compiler) > 어노테이션 프로세서(Annotation Processors)로 이동.
    2. 어노테이션 처리 활성화(Enable annotation processing) 체크박스를 선택.
    3. 기본적으로 "프로젝트 클래스패스로부터 프로세서 가져오기(Obtain processors from project classpath)" 옵션이 선택되어 있을 것. (변경하지 말것.)
    4. 적용(Apply) 또는 확인(OK)을 클릭.

3. 프로젝트 설정 확인 (Maven/Gradle)

의존성 확인: 프로젝트의 의존성 관리 파일(Maven의 pom.xml 또는 Gradle의 build.gradle)에 Lombok 의존성이 올바르게 추가되어 있는지 확인.

  • Maven (pom.xml):
<dependencies>
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.18.30</version>  <scope>provided</scope>
    </dependency>
</dependencies>

 

 

    • Gradle (build.gradle):
dependencies {
    // ... 다른 의존성 ...
    compileOnly 'org.projectlombok:lombok:1.18.30' // 최신 버전 확인
    annotationProcessor 'org.projectlombok:lombok:1.18.30'
}

 

 
  • annotationProcessor 설정 (Gradle): Gradle을 사용하는 경우, build.gradle 파일에 annotationProcessor 설정이 필요함. 
  • 의존성 업데이트: 의존성 관리 도구를 사용하여 Lombok 라이브러리를 다운로드하고 프로젝트에 적용.
    • Maven: mvn clean install
    • Gradle: gradle clean build
    • IntelliJ IDEA에서 Maven/Gradle 프로젝트를 다시 로드(Reimport). (오른쪽 사이드바에 Maven/Gradle 탭에서 refresh 버튼)

4. IntelliJ IDEA 캐시 무효화 및 재시작

  • IntelliJ IDEA의 캐시 문제로 인해 Lombok이 제대로 인식되지 않을 수 있다.
    1. 파일(File) > 캐시 무효화 / 다시 시작...(Invalidate Caches / Restart...) 메뉴를 선택.
    2. 무효화 및 다시 시작(Invalidate and Restart) 버튼을 클릭. (캐시를 삭제하고 IntelliJ IDEA를 재시작.)