Ускорение SBT-сборки

У нас есть проект, в котором мы создаем большое количество микросервисов Scalatra, упаковывая их с помощью плагина sbt-assembly, а затем создавая образы Docker с помощью плагина sbt-docker. Процесс медленный из-за количества микросервисов, потому что плагин сборки должен обрабатывать все переходные зависимости для каждого сервиса. Однако я отмечаю, что большинство микросервисов имеют очень похожие зависимости. Есть ли способ ускорить это?

Одним из ограничений является то, что мы делаем это на сервере Jenkins (CI), поэтому мы вызываем sbt clean на старте, чтобы мы не могли воспользоваться кешированием?

1 ответ

Вы можете собрать общий jar-файл зависимостей, который содержит все зависимости, которые нужны всем вашим микросервисам, и которые вам нужно будет создать только один раз. Затем вы можете собрать jar для каждого из микросервисов без каких-либо зависимостей.

Смотрите раздел " Разделение вашего проекта и файлов JAR ".

Другие вопросы по тегам