Building a custom lifecycle

A lifecycle defines a process. It defines an ordered set of phases that get executed one after the other. The Maven default lifecycle is sufficient to address most of the use cases in build management and automation. However, we might need to alter the behavior of certain phases. Defining a phase and altering a phase are two different things and they are done in two different ways. Accepting the default lifecycle but altering its default behavior has to be done with a proper plugin binding.

Lifecycle phases are dumb entities; they inherit the behavior from the associated plugins. The jar goal of maven-jar-plugin is associated with the package phase of the default lifecycle, for any artifact having the jar packaging. ...

Get Mastering Apache Maven 3 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.