2010-05-19 5 views
21

Есть ли кто-нибудь там, используя Project Lombok для крупномасштабной системы производства? Как это влияет на процесс компиляции (т. Е. Делает ли он двухпроходную компиляцию, замедляет ее, делает ее более хрупкой)?Является ли проект Lombok подходящим для больших проектов java?

+0

Связанный с этим вопрос: «Можно ли использовать Project Lombok?» http://stackoverflow.com/questions/3852091/is-it-safe-to-use-project-lombok – Snekse

ответ

34

Lombok не делает двухпроводный сборник. Технически он «замедляет» процесс компиляции тем, что он работает в дополнение к обычным вещам, возникающим при компиляции, но по сравнению с фазой анализа, нижней фазе и фазе перевода ломбок почти не регистрируется.

Основная проблема хрупкости заключается в том, мозги, запустив javac (например, vim с java-плагином), он будет сосать. Если это не применяется, сокращение шаблона должно сделать ваш код менее хрупким.

ОТКАЗ: Я один из двух главных разработчиков Ломбок :)

+0

Прохладный! Это отвечает на многие вопросы, которые я имею, но, к сожалению, не тот, который я попросил (пример или пригодность для крупномасштабного использования), поэтому я только повышаю и не принимаю. – Jacob

5

Я использовал Project Ломбок в то время как разработка Google Web Toolkit (GWT) передний конец для большого Java & приложения Swing UI. Поскольку я не использовал @SneakyThrows, мне не требовалось lombok.jar во время выполнения.

Использование поведения delombok Я предоставляю процесс компиляции 2 этапа. Ломбок код аннотированный Java => Java код => Javascript

С точки зрения пригодности для крупных проектов Java, delomboking код веб переднего конца занимает менее 2 секунд, остальную часть GWT-компиляции процесс занимает ~ 50 секунд (эти показатели берутся с рабочей станции разработчика).

Мы рассматриваем эту неделю, если мы предоставим поддержку Lombok остальной части приложения. Построение основного приложения занимает около 1 часа (включая модульные тесты, установщики и т. Д., Построенные на коробке с 2xIntel E5450).

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

  • Нет связанных вопросов^_^