Добавьте MavenFailureException
, если ваш шаг сборки не удался, но он может быть проигнорирован (например, вы можете игнорировать неудачные тесты).
Бросьте MavenExecutionException
, если нет возможности продолжить - скажем, вы обнаружили неисправимое условие, которое пытались скомпилировать, и проект не может быть скомпилирован, поэтому все после этого будет бесполезным.
MavenExecutionException
всегда убивает сборку, тогда как поведение MavenFailureException
настраивается.
Поведение по умолчанию - быстрый сбой, то есть то же самое, что и ошибка сборки, что чаще всего и нужно. Вы можете изменить поведение, передав флаг командной строки:
mvn -fae
сбой в конце, т. Е. Каждый шаг сборки будет выполнен, и вы можете столкнуться с последующими сбоями в случае сбоя этапа, сборка завершится только после выполнения каждого шага.
mvn -fn
не подведет. Это полезно, если вы хотите игнорировать, например, неудачный интеграционный тест, но тем не менее mvn deploy
.