원본 작성일: 2018.09.19
보완 작성일: 2026.02.14

Spring Boot에서 Lombok을 쓰면 getter, setter, builder 같은 보일러플레이트 코드를 어노테이션 하나로 대체할 수 있다. 그런데 Eclipse에서는 pom.xml에 의존성만 추가하면 컴파일은 되지만 IDE에서 빨간 줄이 뜬다. Eclipse에 Lombok 플러그인을 별도로 설치해야 한다.
왜 별도 설치가 필요한가?
Lombok은 컴파일 시점에 코드를 생성하는 라이브러리다. Maven/Gradle은 이를 처리할 수 있지만, Eclipse의 자체 컴파일러(ECJ)는 Lombok의 코드 생성을 이해하지 못한다. 그래서 Eclipse에 Lombok agent를 직접 설치해서, ECJ가 Lombok 어노테이션을 인식하게 해줘야 한다.
설치 과정
1. pom.xml 의존성 추가
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>Spring Boot starter를 사용하면 버전은 자동 관리된다.
2. Lombok JAR 다운로드
Maven 로컬 리포지토리에서 가져오거나, projectlombok.org에서 직접 다운로드한다.
# Maven 로컬 리포지토리에서 찾기
find ~/.m2/repository/org/projectlombok -name "lombok-*.jar"3. Lombok 설치 프로그램 실행
java -jar lombok-1.18.xx.jarGUI 설치 프로그램이 뜬다. Eclipse 설치 경로를 지정하고 "Install / Update"를 클릭한다.
이 과정이 하는 일: eclipse.ini에 -javaagent:lombok.jar 옵션을 추가하고, lombok.jar를 Eclipse 설치 폴더에 복사한다.
4. Eclipse 재시작
재시작 후 @Getter, @Setter 등의 어노테이션이 정상 인식된다.
자주 쓰는 Lombok 어노테이션
| 어노테이션 | 역할 |
|---|---|
@Getter / @Setter |
getter/setter 자동 생성 |
@ToString |
toString() 자동 생성 |
@EqualsAndHashCode |
equals(), hashCode() 자동 생성 |
@NoArgsConstructor |
기본 생성자 |
@AllArgsConstructor |
모든 필드 생성자 |
@Builder |
빌더 패턴 |
@Data |
Getter + Setter + ToString + EqualsAndHashCode + RequiredArgsConstructor 통합 |
@Slf4j |
Logger 자동 생성 |
@Data는 편하지만@Setter가 포함되어 있어서, 엔티티에서는@Getter만 쓰고 setter는 필요한 필드에만 개별 적용하는 경우가 많다.
IntelliJ는?
IntelliJ IDEA는 2020.3 버전부터 Lombok 플러그인이 기본 번들로 포함되어 있다. 별도 설치 없이 pom.xml에 의존성만 추가하면 바로 동작한다.
관련 글: Eclipse 설치와 Workspace 설정
'Mechanic: IT 인터넷 > Mechanic, M-Tech' 카테고리의 다른 글
| 리눅스 노트북 덮개 닫아도 전원 유지하는 방법 - logind.conf 설정 (0) | 2018.10.12 |
|---|---|
| bash: setlocale LC_CTYPE 경고 해결 - macOS에서 리눅스 서버 SSH 접속 시 (1) | 2018.10.05 |
| Spring Boot + JPA + MariaDB 연동 시 entityManagerFactory 에러 해결 (0) | 2018.09.18 |
| JavaScript 소수점 자리수 고정 - toFixed() 사용법과 주의점 (0) | 2014.10.07 |
| jQuery Filter 정리 - 필터 종류와 Vanilla JS 대응 (1) | 2014.09.26 |