Где находятся файлы конфигурации Maven?

«Где находятся файлы конфигурации Maven?» — вопрос из категории DevOps, который задают на 10% собеседований Java Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Maven использует два основных типа файлов конфигурации:

1. pom.xml (Project Object Model)

  • Назначение: Основной файл конфигурации проекта (зависимости, плагины, сборка).
  • Расположение: Всегда находится в корневой директории проекта.

2. settings.xml

  • Назначение: Конфигурация среды Maven (репозитории, прокси, профили).
  • Расположение:
    • Глобальный: ${MAVEN_HOME}/conf/settings.xml – настройки для всех пользователей системы.
    • Пользовательский: ~/.m2/settings.xml – персональные настройки, переопределяющие глобальные.

Пример структуры проекта:

my-maven-project/
├── pom.xml           <-- Конфигурация проекта
├── src/
│   ├── main/java/    
│   └── test/java/
└── target/           <-- Директория сборки (генерируется)

Порядок применения настроек: Пользовательский settings.xml имеет приоритет над глобальным. Настройки в pom.xml специфичны для проекта и обычно не переопределяют глобальные параметры среды.