2009-09-13 2 views
7

Моя проблема с maven заключается в том, что если репозиторий maven не отвечает, его невозможно создать. Кажется, что каждый пакет «mvn package» приносит некоторые поры, которые не будут меняться, потому что они имеют одинаковую версию.Как заставить maven загружать poms для использования в автономном режиме

Как я могу сказать maven, что, пожалуйста, не смотрите на них с сервера и вместо этого загружайте их постоянно в автономный репозиторий?

Спасибо!

ответ

11

Вы можете запустить Maven с -o флагом:

-o,--offline       Work offline 

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

11

Вы можете настроить репозиторий на проверку обновлений только иногда или никогда не устанавливая элемент updatePolicy в объявлении репозитория. Из settings documentation:

Частота для загрузки обновлений - может быть «всегда», «ежедневно» (по умолчанию), «интервал: XXX» (в минутах) или «никогда» (только если он не существует локально).

Добавление следующей строки в POM или настройки настроят центральное хранилище для загрузки только если артефакт не существует локально:

<repositories> 
    <repository> 
    <id>central</id> 
    <releases> 
     <updatePolicy>never</updatePolicy> 
    </releases> 
    </repository> 
</repositories> 

Если хранилище в вопросе является внутренним удаленный репозиторий, вам необходимо убедиться, что maven-metadata.xml равен configured correctly в удаленном репозитории, или Maven будет пытаться загрузить его каждый раз. Самый простой способ сделать это состоит в использовании repository manager, который будет управлять метаданными автоматически

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