pom.xml
pom.xml — главный файл Maven-проекта: описывает, из чего состоит проект и что ему нужно для сборки. Maven читает его и сам скачивает зависимости, компилирует и собирает код по описанным правилам.
<project>
<groupId>ru.javaguide</groupId>
<artifactId>my-app</artifactId>
<version>1.0.0</version>
<packaging>jar</packaging>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
</properties>
<dependencies>
<!-- сюда добавляются библиотеки -->
</dependencies>
</project>
groupId + artifactId + version — уникальные координаты проекта (так же как у любой библиотеки в репозитории Maven).
Копнуть глубже
Жизненный цикл сборки Maven — фиксированная последовательность шагов (фаз), каждая зависит от предыдущей:
validate → compile → test → package → install → deploy
mvn compile # только скомпилировать
mvn test # скомпилировать + прогнать тесты
mvn package # + собрать .jar/.war
mvn install # + положить в локальный репозиторий (~/.m2)
Запуск любой фазы автоматически выполняет все предыдущие фазы — mvn package сам сначала скомпилирует и прогонит тесты.
Плагины расширяют, что Maven умеет делать на каждом шаге — например, maven-compiler-plugin управляет компиляцией, maven-surefire-plugin — запуском тестов. Подключаются в секции <build><plugins>.
🎤 Закрыл тему, если можешь объяснить:
• что описывает pom.xml и что такое координаты проекта;
• порядок фаз жизненного цикла Maven (если дошёл до 2-го слоя).
• порядок фаз жизненного цикла Maven (если дошёл до 2-го слоя).