Местоположение локального репозитория Maven для Linux и Windows - PullRequest
24 голосов
/ 01 августа 2011

У меня есть система двойной загрузки с Windows и Linux.У меня есть другой раздел, который виден как Windows, так и Linux.Я хочу разместить свой локальный репозиторий там.Как я могу указать путь, который будет понятен как Linux, так и Windows?Windows видит его как диск d:/repository, а Linux видит /media/234242342/repository.Как мне настроить это в pom.xml?

Ответы [ 5 ]

32 голосов
/ 01 августа 2011

Для каждой ОС требуется M2_HOME согласно документации Maven. Внутри $M2_HOME/conf/ вы можете поместить файл settings.xml, в котором вы можете указать местоположение для локального репозитория, используя элемент <localRepository/>.

Так что для вашей конкретной системы в Windows используйте

<localRepository>d:\repository</localRepository>

и в Linux

<localRepository>/media/234242342/repository</localRepository>
11 голосов
/ 01 августа 2011

Вы делаете это не в POM, а в вашем ~/.m2/settings.xml, который будет отличаться как для Linux, так и для Windows, так что нет проблем. См. Элемент localRepository:

<settings>
    <localRepository>d:\repository</localRepository>
    <!-- or -->
    <localRepository>/media/234242342/repository</localRepository>
    ...
 </settings>
3 голосов
/ 24 марта 2016

Он находится в каталоге /home/.m2, вероятно, эта папка скрыта.Итак, вам нужно нажать Ctrl + H, чтобы увидеть скрытые папки.

1 голос
/ 29 мая 2019

Вы можете запустить:

mvn help:evaluate -Dexpression=settings.localRepository

источник

1 голос
/ 01 августа 2011

Разве вы не можете просто определить оба местоположения как отдельные репозитории и позволить maven использовать доступное?

Или символическую ссылку /media/234242342/repository на /repository и используйте этот путь для обеих сборок.

Кроме того, взгляните на профили maven , это может быть полезно!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...