Как исправить покрытие Lombok в многомодульном проекте maven - PullRequest
0 голосов
/ 03 августа 2020

У меня есть проект с несколькими модулями maven, и в каждом из них реализованы модульные тесты. Они зависят друг от друга через родительский модуль. Я использую Lombok для генерации всего стандартного кода для своих моделей, и с помощью модульных тестов я не покрываю @Getters и @Setters на этих моделях.

Я знаю, что, чтобы исключить их и улучшить охват, вы можете добавить lombok.config с настройкой lombok.addLombokGeneratedAnnotation = true. Я добавил это в родительский модуль, но, похоже, это не работает. Есть ли способ настроить это для всех модулей?

Я также пытался добавить разные файлы lombok.config для всех модулей, но это все равно не сработало. Эта проблема в основном затрагивает покрытие SonarQube, поскольку он не знает, что он должен игнорировать эти неиспользуемые геттеры и сеттеры.

PS: До того, как проект был многомодульным, проект был простым проектом maven и этим lombok.config работал, покрытие хорошее. После перевода проекта на многомодульный подход в модульных тестах ничего не изменилось.

1 Ответ

0 голосов
/ 03 августа 2020

Любой файл lombok.config будет влиять только на java -файлы в этом каталоге или ниже. Наличие конфигурационного файла в суперпроекте не повлияет на файлы в дочерних проектах или модулях, если только эти исходные пути не ниже, чем у родительского проекта, что, как я полагаю, не так.

Строка lombok.addLombokGeneratedAnnotation = true должен быть в каждом lombok.config -файле в каждом исходном каталоге, на который будет воздействовать.

...