Ответ
Результатом фазы сборки (build) являются артефакты, готовые для развертывания и выполнения. Конкретный выход зависит от типа проекта и инструмента сборки (Maven, Gradle).
Основные артефакты:
- Скомпилированные
.classфайлы (байт-код) — располагаются в директорияхtarget/classes(Maven) илиbuild/classes/java/main(Gradle). - Архивы для развертывания:
- JAR (Java Archive) — для стандартных приложений и библиотек.
- WAR (Web Application Archive) — для веб-приложений.
- EAR (Enterprise Archive) — для корпоративных Java EE приложений.
- Исполняемый (fat/uber) JAR — для Spring Boot и подобных приложений, содержит все зависимости и встроенный сервер.
Пример структуры после сборки Maven-проекта:
my-app/
└── target/
├── classes/ # Скомпилированные .class файлы
│ └── com/example/Main.class
├── my-app-1.0-SNAPSHOT.jar # Основной JAR-артефакт
└── surefire-reports/ # Отчеты тестов (опционально)
В Gradle аналогичная структура создается в директории build/.