2013-05-16 3 views
16

Как глобально изменить расположение каталога maven .m2?Maven - альтернативный .m2 каталог

Maven использует ${user.home}/.m2 для его настройки, кэш хранилища и т.д.

Я знаю, что я могу:

  • точки в другую директорию для хранилища кэша (путем изменения атрибута localRepository в моей глобальной config file), но не для чего-либо еще (settings.xml, например).
  • Используйте опцию -s CLI, но я должен был бы это делать каждый раз, когда я использую maven.

Но в идеале я бы хотел получить глобальное решение. Интуитивно это должно быть возможно.

Я хотел бы сделать это, потому что моя компания устанавливает мой $ {user.home} на общий диск, который подвержен сетевым проблемам.

ответ

12

Лучшим вариантом является создание .m2 в вашем user.home в качестве символической ссылки перед использованием Maven для указания на локальную папку на вашем компьютере.

В противном случае вы можете создать псевдоним оболочки для mvn, называемый mymvn (или m3 или что-то еще), который проходит в -s, а также локальное местоположение репо.

+0

Да, я думаю, что это лучшая альтернатива. Unf Я не могу создать символическую ссылку (windows :(), но псевдоним (в виде пакетного файла) будет работать пока. –

+0

[Простой, простой способ создания символических ссылок в Windows] (https: // superuser.com/questions/197273/straightforward-easy-way-to-create-symbolic-links-on-windows) – Vadzim

29

Используйте переменную окружения MAVEN_OPTS, чтобы указать местоположение вашего репозитория. Установите его во время запуска оболочки, и вам не нужно каждый раз вводить его в командной строке.

export MAVEN_OPTS="-Dmaven.repo.local=/path/to/repository" 

Addendum. Прости. Вы сказали, что хотите изменить .m2 для настроек, а также для репозитория. Вы хотите установить переменную среды M2_HOME. Этот documentation говорит, что управляет тем, где maven ищет settings.xml. Оттуда вы можете управлять местоположением репозитория и т. Д.

+0

благодаря dbrown, но M2_HOME где специалист ищет мавена установки, и поэтому глобальные настройки. –

-1

Вам нужно найти файл settings.xml, а затем редактировать <localRepository>/path/to/local/repo</localRepository>

+0

См. первый пункт вопроса –

Смежные вопросы