
안녕하세요 오늘은 자바 개발중 발생한 에러건에 대한 내용입니다.
java: constructor ~ in class ~ cannot be applied to given types;
required: no arguments
found: java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String
reason: actual and formal argument lists differ in length
이런 에러인데요 간단합니다.
@Builder 를 사용할때 @RequiredArgsConstructor 를 사용하지 마세요
발생한 오류는 코드의 Lombok 주석( @Builder, @RequiredArgsConstructor) 사용과 관련이 있습니다.
Lombok은 컴파일 중에 getter/setter 메서드,
생성자 및 기타 반복 코드를 자동으로 생성하여
Java 클래스의 상용구 코드를 줄이는 데 도움이 되는 라이브러리입니다.
Lombok 주석의 특정 동작은 용도 및 프로젝트 구성에 따라 달라질 수 있습니다.
귀하의 경우에는 클래스에 인수가 없는 생성자가 없기 때문에 오류가 발생했습니다.
@RequiredArgsConstructor를 사용하면
Lombok은 최종이 아닌 모든 필드를 인수로 포함하는 생성자를 생성했습니다.
그러나 빌더 패턴을 사용하여 의 인스턴스를 생성했기 때문에
클래스 인수가 없는 생성자가 필요했습니다.
@AllArgsConstructor를 사용하도록 전환하면
Lombok은 모든 필드(최종 필드 포함)를 인수로 포함하는 생성자를 생성했습니다.
빌더 패턴을 사용하여 인스턴스를 생성하기 위한
충분한 인수가 있는 생성자를 제공했기 때문에 오류가 해결되었습니다.
감사합니다.
'개발 · IT > error' 카테고리의 다른 글
| 🚨 Runtime Errors(실행 시간 오류) 해결 가이드 (0) | 2025.12.15 |
|---|---|
| Logic Errors(논리 오류) 해결법 (0) | 2025.12.11 |
| Null Pointer Exception (NPE) — 빠르고 확실하게 해결하는 방법 (0) | 2025.12.10 |
| Syntax Errors(구문 오류) 빠르게 해결하는 법 (0) | 2025.12.09 |
| [ERROR] Failed to execute goal on project ~ Blocked mirror for repositories (2) | 2023.10.05 |
댓글