The Build Lifecycle
A problem every former Ant or Maven 1 users have probably faced in the past (if not please give me your trick!!) is to try to figure out the execution order of a given goal or task of a third party build. Basically, you had to trace down every dependencies or pray the guy had respected some conventions. What a waste of time! Afterall, any project build always goes throught the same phases, ie compiling, testing, packaging, ... Why not standardize those phase and their execution order?
As you have learned in the Maven, not just another build tool, Maven 2 revolves around the concept of build patterns.