Ответ
Основным инструментом был Apache Maven.
Преимущества Maven, которые мы использовали:
- Стандартизация: Четкая структура проекта, задаваемая
pom.xml. - Управление зависимостями: Автоматическое разрешение и скачивание библиотек из центральных репозиториев.
- Жизненный цикл сборки: Предопределенные фазы (
compile,test,package,install). - Экосистема плагинов: Например,
maven-compiler-pluginдля компиляции иmaven-surefire-pluginдля запуска тестов.
Пример секции зависимостей в pom.xml:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>payment-service</artifactId>
<version>1.0.0</version>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.7.0</version>
</dependency>
</dependencies>
</project>
Для некоторых микросервисов параллельно использовался Gradle из-за его гибкости DSL и более высокой скорости инкрементальных сборок.