파란하늘의 지식창고
반응형

로컬에서 서버가 잘 동작하는데 빌드 할 때 constructor ... already defined in class 에러가 나는 경우가 있다.

해당 에러는 lombok 1.16.22 에서 발생하는 에러이다.

1.16.22 - constructor ... already defined in class

해결 방법은 lombok 버전을 1.18.0 이상으로 변경하거나 또는 아래와 같이 @Data 와 @NoArgsConstructor 선언 순서를 맞춰주어야 한다.

@NoArgsConstructor
@Data
public class Foo {
}

@Data를 꽤 많은 부분에서 사용하고 있는 경우가 대다수이므로 순서를 바꾸기 보단 lombok 버전을 변경하는 것을 추천한다.

Spring Boot를 사용하고 있는 경우 2.0.3.RELEASE ~ 2.0.6.RELEASE 까지 1.16.22 버전의 dependencies 가 설정되어 있기 때문에 사용 프로젝트의 dependencyManagement에서 lombok 버전을 재정의해주어야 한다.


반응형
profile

파란하늘의 지식창고

@Bluesky_

도움이 되었다면 광고를 클릭해주세요