Я просто изучаю maven, и нам недавно нужно было идти все больше и больше. Я хотел бы знать разницу между
mvn clean install
mvn release
mvn deploy
Пожалуйста, будьте как можно более наглядными.
Я просто изучаю maven, и нам недавно нужно было идти все больше и больше. Я хотел бы знать разницу между
mvn clean install
mvn release
mvn deploy
Пожалуйста, будьте как можно более наглядными.
Фазы clean
, install
и deploy
действительны этапы жизненного цикла, и их вызов будет инициировать все предшествующие им фазы и цели, связанные с этими фазами.
mvn clean install
Эта команда вызывает фазу clean
, а затем фазу install
последовательно:
clean
: удаляет файлы, сгенерированные во время сборки в каталоге проекта (target
по умолчанию)install
: устанавливает пакет в репозиторий локальный, для локального использования в других проектах.mvn deploy
Эта команда вызывает фазу deploy
:
deploy
: копирует окончательный пакет в репозиторий remote для совместного использования с другими разработчиками и проектами.mvn release
Это не действительный этап или цель, поэтому ничего не получится. Но если ссылается на Maven Release Plugin, который используется для автоматизации управления выпуском. Выпуск проекта выполняется в два этапа: prepare
и perform
. Как указано:
Подготовка релиза проходит через следующие этапы выпуска:
- Убедитесь, что в источниках отсутствуют незафиксированные изменения.
- Убедитесь, что нет зависимостей SNAPSHOT
- Измените версию в POM с x-SNAPSHOT на новую версию (вы будут предложены версии для использования)
- Преобразование информации SCM в POM для включения окончательного назначение тега
- Запустите тесты проекта с измененными POM, чтобы подтвердить, что все в рабочем состоянии
- Зафиксировать измененные POM
- Пометьте код в SCM с именем версии (это будет запрошено для)
- Настройте версию в POM на новое значение y-SNAPSHOT (эти значения также будет предложено)
- Зафиксировать измененные POM
И затем:
Выполнение выпуска запускает следующие этапы выпуска:
- Проверка с URL-адреса SCM с дополнительным тегом
- Запустите предопределенные цели Maven для выпуска проекта (по умолчанию, развертывание сайта-развертывание)
mvn install
поместит ваш упакованный проект maven в репозиторий локальный, для локального приложения, используя ваш проект в качестве зависимости.mvn release
в основном поместит ваш текущий код в тег вашего SCM, изменит вашу версию в ваших проектах.mvn deploy
поместит ваш упакованный проект maven в репозиторий remote для совместного использования с другими разработчиками.Ресурсы: