讀古今文學網 > Maven實戰 > 7.2.1 三套生命週期 >

7.2.1 三套生命週期

初學者往往會以為Maven的生命週期是一個整體,其實不然,Maven擁有三套相互獨立的生命週期,它們分別為clean、default和site。clean生命週期的目的是清理項目,default生命週期的目的是構建項目,而site生命週期的目的是建立項目站點。

每個生命週期包含一些階段(phase),這些階段是有順序的,並且後面的階段依賴於前面的階段,用戶和Maven最直接的交互方式就是調用這些生命週期階段。以clean生命週期為例,它包含的階段有pre-clean、clean和post-clean。當用戶調用pre-clean的時候,只有pre-clean階段得以執行;當用戶調用clean的時候,pre-clean和clean階段會得以順序執行;當用戶調用post-clean的時候,pre-clean、clean和post-clean會得以順序執行。

較之於生命週期階段的前後依賴關係,三套生命週期本身是相互獨立的,用戶可以僅僅調用clean生命週期的某個階段,或者僅僅調用default生命週期的某個階段,而不會對其他生命週期產生任何影響。例如,當用戶調用clean生命週期的clean階段的時候,不會觸發default生命週期的任何階段,反之亦然,當用戶調用default生命週期的compile階段的時候,也不會觸發clean生命週期的任何階段。