как поставить сетевой путь для локального репозитория maven \\ user023 \ share \ folder - PullRequest
0 голосов
/ 10 февраля 2020

У нас есть локальная сеть с кучей пользователей, соединенных вместе. И мы можем получить доступ к общим файлам, таким как \\user023\share\folder\test.txt. Как я могу использовать этот адрес для создания локального репозитория Maven или как я могу использовать maven { url 'path to network address'}?

Ответы [ 2 ]

1 голос
/ 10 февраля 2020

Я полностью согласен с нашими коллегами, которые предложили избегать использования такого решения:

Локальное хранилище - это прежде всего:

  • Локальное - Разработчик может обновлять этот репозиторий только для разработчиков. Это не "мульти-доступ" безопасно. Даже если многие потоки из одного и того же процесса maven пытаются загрузить в него артефакты (или вообще изменить его), это иногда может быть проблематичным c. Я не говорю о параллельном доступе с несколькими JVM, просто он не предназначен для этого.

  • Кэш - предназначен для быстрого доступа во время компиляции и других задачи, которые делают разработчики. Если вы используете распределенную ФС, это может замедлить компиляцию, и разработчики не будут ее использовать.

Итак, если ваша цель -

, мне нужно опубликовать sh моей библиотеки на сервере, а другой пользователь использует ее для создания проекта

  1. Используйте такие инструменты, как Nexus или Artifactory, для размещения своих артефактов, предназначенных для совместного использования
  2. Если эти инструменты недоступны - используйте какой-либо веб-сервер с доступом HTTP и настройте Maven для загрузки оттуда.
  3. Если это невозможно - поручите разработчикам запускать mvn install для каждой новой версии общих ресурсов. Затем они получат в своем локальном репо приложение воспроизводимой версии.

Конечно, вариант 3 действительно плохой, вариант 2 гораздо лучше, но вариант 1 - лучший, который вы можно получить.

1 голос
/ 10 февраля 2020

Осторожно: локальные репозитории Maven не потокобезопасны.

Если вы одновременно запускаете более одной сборки в одном и том же локальном репозитории Maven, это может привести к несогласованным состояниям.

Поэтому не рекомендуется разделять локальный репозиторий между несколько пользователей.

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