Вы можете указать в своем файле настроек maven , что вы хотите запустить в автономном режиме, но есть ли эквивалентная опция командной строки?
Я бы вообразил что-то вроде, например
mvn install -Dmaven.offline.true
Ответы:
Автономный режим Maven вызывается с помощью mvn -o
.
Однако одного этого может быть недостаточно, потому что иногда текущий проект ссылается на артефакты, которых еще нет в кэше локального репозитория Maven ( ~/.m2/repository
). Попытка собрать этот проект в автономном режиме потерпит неудачу, поскольку необходимые зависимости отсутствуют и не могут быть загружены.
Итак, есть еще одна полезная цель:
mvn dependency:go-offline
Это отличная команда для выполнения перед прыжком в самолет, которая повысит ваши шансы BUILD SUCCESS
. Подробности см. В документации по переходу в автономный режим .
mvn -o
работает в большинстве случаев, но в некоторых случаях этого будет недостаточно, поскольку из Maven 3 загруженный артефакт из удаленного / центрального репозитория создает _remote.repositories
файл в вашем локальном репозитории со ссылкой на то, где была загружена зависимость.
Это может вызвать некоторые проблемы, если позже у вас не будет доступа к этому удаленному репозиторию во время сборки.
Обходной путь, который может работать, использует mvn -o -llr yourGoal
.
Из справочной документации:
-llr, - legacy-local-repository Использовать Maven 2 Legacy Local Поведение репозитория, т.е. отсутствие использования _remote.repositories. Так же может быть активируется с помощью -Dmaven.legacyLocalRepo = true -o, - offline Работа в автономном режиме
Другой способ выполнить mvn в автономном режиме - удалить эти _remote.repositories
метаданные, хранящиеся в каталоге загруженных зависимостей.
mvn -h
:)