Как сделать так, чтобы источник, сгенерированный lombok, был виден в eclipse / maven?

Я пытаюсь использовать lombok (https://projectlombok.org/) для создания «шаблонного» кода. Я добавил зависимость maven, а также добавил плагин lombok maven к элементу <build> в POM.

Одна из вещей, которую мне также сказали сделать, - это поместить аннотированный код ломбока в src/main/lombok вместо src/main/java. Я предполагаю, что сохраняю структуру каталогов пакета такой же, как в src/main/java.

Это кажется немного странным, но я сделал это, и lombok сгенерировал исходные файлы со всеми методами getter / setter / equals / hashCode и т. Д. Они помещаются, например, в target/generated-sources/lombok/x/y/z/MyClass.java. Это то, чего я ожидал, используя другие инструменты генерации кода, такие как XJC.

Мой вопрос: как мне сделать этот сгенерированный источник "видимым" для eclipse и среды компиляции? Я получаю ошибки компиляции повсюду, потому что он не может «видеть» сгенерированный код. Это происходит во время затмения, а также когда я пытаюсь выполнить mvn clean install.

ОБНОВЛЕНИЕ:

Я уже пробовал установить ломбок в eclipse. Он генерирует геттеры / сеттеры / и т. Д., Но где-то есть ошибка, которая нарушает функцию автозаполнения eclipse. Я удалил его из eclipse и просто пытаюсь заставить maven выполнить генерацию (или delombok-ing).


person Joseph Gagnon    schedule 26.07.2019    source источник
comment
Откуда у вас идея src / main / lombok? Звучит очень плохо. Вы следовали, например, baeldung.com/lombok-ide о том, как установить lombok и настроить его в среде IDE?   -  person luk2302    schedule 26.07.2019
comment
См. projectlombok.org/setup/eclipse.   -  person howlger    schedule 26.07.2019
comment
С сайта плагина maven. anthonywhitford.com/lombok.maven/lombok-maven-plugin/usage. html. Согласен, это звучит странно.   -  person Joseph Gagnon    schedule 26.07.2019
comment
@howlger См. projectlombok.org/setup/eclipse Был там, сделал это. Это другая история, что я разместил вопрос в группе Google Ломбока. Я установил его в eclipse, и он красиво сгенерировал код, и он был виден, но возникла проблема, когда автозаполнение eclipse было нарушено в определенных ситуациях.   -  person Joseph Gagnon    schedule 26.07.2019
comment
@JosephGagnon Это мне тоже сказали ..., верно? Если да, пожалуйста, добавьте ссылку на группу Google Lombok, где вам об этом сказали.   -  person howlger    schedule 26.07.2019
comment
Сообщение в группе Google Lombok: groups.google.com/forum/ #! topic / project-lombok / 0mvDpPmj6yc   -  person Joseph Gagnon    schedule 26.07.2019
comment
@JosephGagnon Основная проблема может быть вызвана версией Lombok, которая даже старше вашей устаревшей версии Eclipse.   -  person howlger    schedule 26.07.2019
comment
@JosephGagnon, который не является сайтом плагинов maven, это один случайный человек в Интернете. Нет необходимости использовать плагин вообще.   -  person luk2302    schedule 26.07.2019


Ответы (4)


Я только что установил Lombok (через некоторое время) в свою новую установку Eclipse (STS), и меня немного раздражало отсутствие сгенерированных исходников.

Однако я нашел подсказку, на этой странице, что сгенерированная структура видна в вид Outline. (Смотрите скриншоты)

Если у вас еще нет открытого режима Outline, включите его в меню: Window / Show view / Outline.

person ltuska    schedule 13.12.2020

Вы должны включить обработку аннотаций, чтобы Eclipse мог получать сгенерированный код.

  1. Щелкните проект правой кнопкой мыши и выберите Properties.
  2. Откройте Java Compiler, а затем Annotation Processing. Отметьте Enable annotation processing.
  3. Откройте Java Compiler -> Annotation Processing -> Factory Path. Отметьте Enable project specific settings. Добавьте свой файл Lombok JAR в список.
  4. Очистите и соберите проект.
person Alan Sereb    schedule 26.07.2019
comment
Пробовал это, но это не дало результата. - person Joseph Gagnon; 26.07.2019

Загрузите банку Lombok (https://projectlombok.org/download), запустите ее java -jar lombok.jar и выберите папку с установленным eclipse . Перезапустить eclipse и перестроить проект.

Чтобы проверить установку Lombok, пожалуйста, проверьте Help -> About eclipse. Входное шоу Ломбока показано внизу.

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

person Prasobh.Kollattu    schedule 26.07.2019
comment
Уже шел по этой дороге. После этого возникает описанная выше проблема. - person Joseph Gagnon; 26.07.2019
comment
если вы видите ошибки компиляции, значит плагин lombok неправильно добавлен в eclipse ... Вы используете @Data ?. Можете ли вы проверить справку - ›О затмении .. Внизу должна отображаться запись Lombok. - person Prasobh.Kollattu; 26.07.2019
comment
Да, Справка - ›О Eclipse показывает ту же информацию, что и на изображении. Кстати - как мне вставить изображение в SO? - person Joseph Gagnon; 26.07.2019
comment
Вы выполнили Project - ›clean? .. Убедитесь, что вы выбрали сборку автоматически. - person Prasobh.Kollattu; 26.07.2019

Моя проблема заключалась в использовании полной аннотации пространства имен: @lombok.Getter, и я решил ее, выполнив import lombok.Getter и сделав @Getter

person Bryan Fok    schedule 21.01.2020