Исключение полей из конструктора framework lombok

У меня есть класс, в котором например 11 private final полей. Мне нужен конструктор с 10 полями, не включая 1 из полей. Можно это прописать через аннотации Lombok?


Ответы (1 шт):

Автор решения: Alex Rudenko

Достаточно просто проинициализировать это финальное поле в коде, тогда Lombok сгенерирует конструктор с 10 полями, при использовании аннотаций @Data или @RequiredArgsConstructor.

@RequiredArgsConstructor
static class Pojo1 {
    private final String s1;
    private final String s2;
    private final String s3;
    private final int i1;
    private final int i2;
    private final int i3;
    private final List<String> list = new ArrayList<>();
}

@Data
static class Pojo2 {
    private final String foo;
    private final List<Pojo1> list = new ArrayList<>();
}
Pojo1 p1 = new Pojo1("s1", "s2", "s3", 1, 2, 3);
Pojo2 p2 = new Pojo2("foo");

введите сюда описание изображения

→ Ссылка