Где находится местный репозиторий Maven?

1. Обзор

Эта быстрая запись будет сосредоточена на том, где Maven хранит все локальные зависимости локально - что находится в локальном репозитории Maven.

Проще говоря, когда мы запускаем сборку Maven, все зависимости нашего проекта (jar, jar плагина, другие артефакты) хранятся локально для последующего использования.

Также имейте в виду, что, помимо этого типа локального репозитория, Maven поддерживает 3 типа репозиториев:

  • Local - Расположение папки на локальной машине разработчика

  • Central - Репозиторий предоставлен сообществом Maven

  • Remote - Пользовательский репозиторий, принадлежащий организации

Давайте теперь сосредоточимся на локальном хранилище.

2. Локальный репозиторий

Локальный репозиторий Maven - это папка на компьютере разработчика, где все артефакты проекта хранятся локально.

Когда выполняется сборка maven, Maven автоматически загружает все jar-файлы зависимостей в локальный репозиторий.

Обычно эта папка называется __ .

Вот где по умолчанию путь к этой папке - в зависимости от ОС:

Windows: C:\Users\<User__Name>\.m2
Linux:/home/<User__Name>/.m2
Mac:/Users/<user__name>/.m2

И, конечно же, для Linux или Mac:

Linux/Mac: ~/.m2

3. Нет хранилища в расположении по умолчанию

Если репозиторий отсутствует в этом расположении по умолчанию, это может произойти из-за некоторой ранее существующей конфигурации.

Этот файл конфигурации находится в установочном каталоге Maven - в папке с именем conf - и называется settings.xml .

Вот соответствующая конфигурация, которая определяет местоположение нашего недостающего локального репо:

<settings>
    <localRepository>C:/maven__repository</localRepository>
    ...

По сути, это то, как мы можем изменить местоположение локального репо - и, конечно, если это место будет изменено, мы больше не найдем репо в местоположении по умолчанию.

Примечание: файлы, сохраненные в более ранней папке, не будут перемещены автоматически .

4. Заключение

В этом кратком руководстве мы рассмотрели настройки по умолчанию для локального репозитория Maven и пользовательскую конфигурацию для изменения местоположения репозитория.