Есть ли опция командной строки maven для автономного режима? - PullRequest
66 голосов
/ 13 января 2012

Вы можете указать в файле maven settings файл, который вы хотите запустить в автономном режиме, но есть ли эквивалентная опция командной строки?

Я хотел бы представить что-то вроде, например,

mvn install -Dmaven.offline.true

Ответы [ 5 ]

145 голосов
/ 13 января 2012

Укажите автономный режим через -o / --offline:

mvn -o install

Справочник Maven

19 голосов
/ 13 января 2012

Просто простое:

mvn --offline

В будущем я рекомендую обратиться к mvn --help.

18 голосов
/ 14 января 2015

Автономный режим Maven вызывается с помощью mvn -o.

Однако одного этого может быть недостаточно, поскольку иногда текущий проект ссылается на артефакты, которых еще нет в кэше локального репозитория Maven (~/.m2/repository). Попытка построить этот проект в автономном режиме не удастся, поскольку необходимые зависимости отсутствуют и не могут быть загружены.

Так что есть еще одна полезная цель:

mvn dependency:go-offline

Это отличная команда для запуска перед прыжком на самолете, которая повысит ваши шансы на BUILD SUCCESS. Для получения подробной информации см. автономную документацию .

3 голосов
/ 13 января 2012

Попробуйте -o или даже --help, чтобы получить помощь по всем параметрам

2 голосов
/ 30 августа 2018

mvn -o работает в большинстве случаев, но в некоторых случаях этого будет недостаточно, так как из Maven 3 загруженный артефакт из удаленного / центрального хранилища создает файл _remote.repositories в вашем локальном хранилище со ссылкой на то, где была зависимость скачали.
Это может вызвать некоторые проблемы, если позже у вас не будет доступа к этому удаленному репозиторию во время ваших сборок.
Обходное решение, которое может работать, использует mvn -o -llr yourGoal.

Из справочной документации:

 -llr,--legacy-local-repository         Use Maven 2 Legacy Local
                                        Repository behaviour, ie no use of
                                        _remote.repositories. Can also be
                                        activated by using
                                        -Dmaven.legacyLocalRepo=true

 -o,--offline                           Work offline

Другим способом выполнения mvn в автономном режиме является удаление этих _remote.repositories метаданных, хранящихся в каталоге загруженных зависимостей.

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