Если вы используете CDI, вы можете использовать методы Producers. Он будет вызываться много раз, но результат первого вызова кэшируется в объеме компонента и эффективен для геттеров, которые вычисляют или инициализируют тяжелые объекты! См. здесь , для получения дополнительной информации.
Мой env: java версия "1.8.0_144"
Eclipse: Eclipse Java EE IDE для веб-разработчиков. Версия: Oxygen Release (4.7.0) Идентификатор сборки: 20170620-1800
Выйдите из Eclipse (если он открыт) и загрузите jar с https://projectlombok.org/ скачать
выполнить команду: java -jar lombok.jar
Эта команда откроет окно, как показано здесь https: // projectlombok .org / setup / eclipse , установите и выйдите из установщика.
Добавьте jar для построения пути / добавьте его в pom.xml.
перезапустить затмение.
Enable annotation processing
в соответствующей IDE. Вот и все. Это сработало. Я не изменил сценарий инициализации Eclipse. Примечание: Прочитайте примечание на следующем изображении, касающееся параметров -vm Если вы запустите Eclipse с пользовательским параметром -vm, вам необходимо добавить:
-vmargs -javaagent:<path-to-lombok-jar>/lombok.jar
в качестве параметра
Вышеуказанные шаги работают для Photon Release (4.8.0)
- Lombok v1.18.2
, eclipse: Oxygen.3a Release (4.7.3a)
- Lombok v1.18.0
и eclipse: Neon.3 Release (4.6.3)
- Lombok v1.18.2
Если перезапуск Eclipse не помогает. Вы должны выйти из приложения и убить все запущенные процессы Java. Это сработало для меня.
(Eclipse Oxygen 4.7.1a, OpenJDK 1.8.0_151-b12)
Ломбок не работает для Eclipse Neon
- You should not just "restart" Eclipse, go to File -> Exit and then open it again. - Don't forget to do a mvn clean just to make sure that you recompiled your classes. - After all this you should also right-click on your project, then Maven -> Update Project
У меня была точно такая же проблема с Алексом. Моя версия затмения
Версия: Oxygen.1a Release (4.7.1a) Идентификатор сборки: 20171005-1200
Я установил Ломбок 1.16.18 , после проверки он был уже установлен, а также добавлена строка javaagent в мой файл eclipse.ini.
Все было хорошо, за исключением ошибок компиляции, когда в проекте вызывался метод getter. Это неудобно, но я исправил:
Проект очистки
Проект здания
Возобновление затмения a несколько раз
Ничего другого.
Не используйте старые версии Java.
Что происходит, так это то, что lombok помещает следующую строку в ваш eclipse.ini:
-javaagent: lombok.jar
И lombok.jar находится в каталоге C:\eclipse\jee-oxygen\eclipse
Проблема в том, что ярлык созданная установка Windows выглядит следующим образом:
Заполните путь «Начать с», и он будет работать:
Для пользователей MacBook Pro (например, под управлением macOs Sierra v10.12.6), чтобы установить ломбок на Eclipse Oxygen (4.7.0) или Photon (4.8. 0) , используя Java 1.8 (1.8.0_144), просто выполните следующие действия:
java -jar lombok.jar
; /tools/ide/eclipse/jee-oxygen/Eclipse.app/Contents/Eclipse/eclipse.ini
. В строке меню перейдите к Eclipse> About Eclipse и убедитесь, что установлен lombok :
Lombok v1.16.18 "Dancing Elephant" is installed. https://projectlombok.org/
Обязательно прокрутите текстовое окно закрыто, так как установленная версия Lombok появляется в тексте над строкой значков.
Наконец, добавьте lombok к пути сборки вашего проекта в соответствии с используемым инструментом сборки. Например, для Maven используйте следующую зависимость:
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.18</version>
<scope>provided</scope>
</dependency>
Для пользователей Linux / Ubuntu, которые запускают Eclipse из модуля запуска (файл .desktop), который заблокирован для вашего модуля запуска, а в диалоговом окне «Справка -> О программе» не отображается lombok:
Кажется, это работает из-за некоторой проблемы с приложениями «lock to launcher», и это процесс разблокировки / блокировки, который исправляет это.
(Благодаря комментарию кардамона здесь , который указал мне на это решение)
Я использую STS. После выполнения установки lombok.jar, показанной выше, необходимо выполнить следующую задачу. STS -> Проект -> Свойства -> Компилятор Java -> Обработка аннотаций -> Включить обработку аннотаций. Смотри здесь
Также были проблемы с ломбком в затмении кислорода.
Мое решение: вернулось из java версии 8u144 в 8u141.
И я ссылаюсь на lombok, добавив это в мой eclipse.ini:
-Xbootclasspath / c: /DEV/Tools/lombok-1.16.18/lombok.jar
-javaagent : /DEV/Tools/lombok-1.16.18/lombok.jar
Были проблемы с Eclipse Oxygen, Java 1.9 и Lombok (на Mac OSX - windows / linux должны быть похожими). [тысяча сто двадцать семь]
Вот что мне нужно было сделать:
lombok: 1.16.20
java -jar lombok.jar
/[some-folder-heirarchy]/Eclipse.app/Contents/Eclipse/eclipse.ini
После проверки, чтобы увидеть если обновления сделали это в eclipse.ini:
-javaagent:/[some_folder-hierarchy]/eclipse-oxygen/Eclipse.app/Contents/Eclipse/lombok.jar
Есть только одна строка, которая обновляется . Это изменение по сравнению с некоторыми более ранними версиями lombok
, где также был указан bootclasspath
и / или путь к lombok.jar
был относительным. Теперь это абсолютный путь.
Поднимите затмение, и вы увидите Ломбок в действии.
И не забудьте использовать ту же версию Lombok
в вашем maven
или любом другом инструменте управления зависимостями.
Редактировать 1: Я также использовал версию Lombok
в maven POM
, отличную от той, которая установлена в eclipse
, и по большей части все было скомпилировано, но было несколько ошибки компиляции в eclipse
. Конечно, все успешно скомпилировано в командной строке с maven
. Так что, если у вас есть зависимости проекта, которые вынуждают вас использовать разные версии Lombok, знайте о такой возможности. Суть в том, чтобы одна и та же версия была установлена в eclipse
и в управлении зависимостями вашего проекта (maven
и т. Д.).
Довольно много решений, ни одно из них не решило мою проблему.
Eclipse Oxygen 3a, апрель 2018 года, установщик работает нормально,
Моя проблема - запуск Eclipse на DCEVM JRE. Указание Eclipse на немодифицированную JVM решило эту проблему.
У меня была похожая проблема, но я не помню, что мне помогло. Конечно, вы можете попробовать перезапустить Eclipse. Убедитесь, что вы указали правильный путь Eclipse при установке lombok. В этой теме вы можете найти другие потенциальные решения: Невозможно заставить Project Lombok работать на Eclipse (Helios)
Решение:
Установите lombok 1.16.18 в соответствии с инструкциями на сайте lombok. Лучше, чтобы Eclipse был близко во время установки.
Убедитесь, что Eclipse может запускаться правильно. На ярлыке измените свойства и заполните путь « Start in », и он будет работать, как отмечалось Томасом и Фабиано.
Когда Eclipse откроется, обновите Maven для проекта, чтобы устранить ошибки компиляции.
Теперь последняя версия Lombok работает с последней версией Eclipse.
Для справки:
My Eclipse: Oxygen
Version: Oxygen.2 Release (4.7.2)
Build id: 20171218-0600
My JRE / JDK: 1,8
java version "1.8.0_152"
Java(TM) SE Runtime Environment (build 1.8.0_152-b16)
Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode)
ломбок 1.16.18
У меня была та же проблема, однако, оригинальная разработка была сделана с использованием lombok 1.16.10, и я установил 1.16.18. Когда я скачал и установил 1.16.10 все заработало. Мне, вероятно, нужно было сделать несколько чисток и перестроений, чтобы заставить его работать с .18, но если вы спешите, попробуйте это.
Здравствуйте, я решил эту проблему, просто отредактировав зависимость lombok в pom.xml
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.16</version>
<scope>provided</scope>
</dependency>
Эта версия, кажется, работает с Java 8.