ошибка сборки gradle - возможна проблема с ломбоком - PullRequest
0 голосов
/ 20 ноября 2018

Я установил lombok 1.18.4 для STS.

Однако, если я пытаюсь собрать свой jar в терминале с ./gradlew clean build, а не через STS, я получаю эту ошибку:

Task :compileJava FAILED
Image.java:12: error: constructor Image() is already defined in class Image
@NoArgsConstructor
^
1 error

Я нашел эту страницу , которая предполагает, что это проблема со старой версией lombok.Как мне кажется, он установлен и работает через IDE, я должен что-то сделать, чтобы встроить его в терминал?

Вот мой Image код класса:

package com.greglturnquist.learningspringboot.learningspringboot;

import lombok.Data;
import lombok.NoArgsConstructor;

//tag::code[]
@Data
@NoArgsConstructor
public class Image {

    private int id;
    private String name;

    public Image(int id, String name) {
        this.id = id;
        this.name = name;
    }

}
//end::code[]

Ответы [ 3 ]

0 голосов
/ 21 ноября 2018

Исходя из вашего комментария о версии Gradle, найдите файл build.gradle для вашего проекта.

Найдите раздел зависимостей внутри и обновите строку, относящуюся к lombok, в соответствии с вашей версией STS

Вы должны увидеть строку, похожую на эту, но с версией 1.16.22.

dependencies {
    compileOnly('org.projectlombok:lombok:1.18.4')
}
0 голосов
/ 28 февраля 2019

Добавить следующие как зависимости

compileOnly 'org.projectlombok:lombok:1.18.6'
annotationProcessor 'org.projectlombok:lombok:1.18.6'

и репозиторий

repositories {
    mavenCentral()
}
0 голосов
/ 21 ноября 2018

Попробуйте с AccessLevel Я только что прошел через эту проблему в github здесь

@NoArgsConstructor(access=AccessLevel.PUBLIC)

Ресурс Github По указанной ссылке

Да, это ошибка.Сожалею.Посмотрим, как скоро мы сможем сделать новый выпуск.

1.16.22 конструктор имеет личный доступ # 1704

ИЛИ обновит до

Обновление версии зависимости Lombok до 1.18.2 # 14127

...