Ответ
Build time (время сборки) — это фаза жизненного цикла ПО, когда исходный код преобразуется в исполняемый артефакт. Это происходит до запуска программы (runtime).
Основные этапы сборки (на примере Maven/Gradle):
- Компиляция: Преобразование исходного кода (.java) в байт-код (.class).
- Обработка аннотаций: Генерация кода (например, Lombok, MapStruct).
- Тестирование: Запуск модульных и интеграционных тестов.
- Упаковка: Создание конечного артефакта (JAR, WAR, EAR).
- Деплой: Копирование артефакта в целевое окружение (опционально).
Пример команды Maven для полного цикла:
mvn clean compile test package
Инструменты:
- Maven (XML-конфигурация, предопределенный жизненный цикл).
- Gradle (DSL на Groovy/Kotlin, гибкость и производительность).
- CI/CD системы (Jenkins, GitLab CI, GitHub Actions) автоматизируют сборку при каждом изменении кода.
Ключевое отличие от Runtime: На этапе сборки код еще не выполняется, а только подготавливается. Ошибки сборки (синтаксис, зависимости) блокируют создание артефакта.