Я использую следующее:
@Entity
@Data
@Builder
@NoArgsConstructor(force = true)
public class User {
private String id;
private String firstName;
private String lastName;
}
чего я хочу добиться: для использования JPA мне нужен POJO с noArgConstructor, геттерами/сеттерами и equals/hashCode/toString.
Для создания экземпляра (например, в тестах) я хочу использовать User.builder().build();
Проблема: он не компилируется, похоже, проблема с NoArgConstructor и RequiredFieldsConstructor:
Error:(15, 1) java: constructor User in class x.y.z.User 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
Обновление: ошибка возникает, когда я пытаюсь создать новый объект через new
... работает builder().
Что мне не хватает? Нельзя ли одновременно использовать @Data, @Entity и @Builder?