2013-10-03 3 views
4

Я пытаюсь получить файлы, аннотированные с помощью lombok.jar, для компиляции с maven 3 с использованием одного из ранних выпусков раннего доступа Java 8. Я настроил maven на использование компилятора java 8. Код, который я компилирую, имеет зависимость, определенную для lombok 0.12 в maven central. Однако, когда я компилирую с мавена я получаю следующее сообщение об ошибке:Компиляция с lombok с использованием maven и java 8

[ERROR] symbol: variable log 
[ERROR] location: class Foo 
[ERROR] C:.....\Foo.java:[319,33] error: cannot find symbol 

Я запустить Maven в режиме отладки и записи пути к классам, указанные говорится, что банка файл Ломбки 0,12 находится в пути к классам проекта. Кроме того, я попытался установить lombok.jar специально в моем пути к классам (и я вижу в env.CLASSPATH в режиме debug debug), который создает те же результаты.

Все строит и компилирует только в затмении - что я делаю неправильно с конфигурацией/окружением maven, так что я не могу получить компиляцию для успеха за пределами eclipse?

ответ

6

Чтобы ответить на мой вопрос - проблема с версией lombok (0.12.0) не работает хорошо с java 8. Чтобы исправить, я использовал cutting edge version of lombok, установил его в мое локальное репозиторинг maven с помощью строки

mvn install:install-file -Dfile=lombok-edge.jar -DgroupId=org.projectlombok -DartifactId=lombok-edge -Dversion=0.12.1 -Dpackaging=jar 

, а затем изменили зависимости в моем пом.

Как только я это сделал, я смог скомпилировать из командной строки maven.

+0

Вчера была выпущена версия Lombok 1.12.2, которая решает эту проблему. Полный Disclusure: Я один из разработчиков проекта Lombok. –

+0

Спасибо, что сообщили мне о новом выпуске. FWIW - Я наслаждался использованием Ломбока. Продолжайте хорошую работу. – chooks

Смежные вопросы