我正在創建一個基於JAR包裝生命週期的定製Maven包裝。我想知道這個生命週期的定義(即components.xml
源代碼位置)。JAR包裝定義的Maven生命週期在哪裏?
回答
你對你的問題有一個小小的誤解。 "jar"
包裝沒有特殊的生命週期。它基於默認的生命週期。
Maven的定義3個生命週期中
META-INF/plexus/components.xml
:
default
生命週期clean
生命週期site
生命週期
你可以在源代碼here for Maven 3.3.9找到這個components.xml
的文件。
default
生命週期而沒有任何相關插件定義:因爲它們取決於包裝上的生命週期default
沒有定義任何綁定。該生命週期的插件綁定是defined separately for every packaging。
每個標準包裝(如"jar"
)都定義了插件,這些插件綁定到此默認生命週期的特定階段。您可以在文件default-bindings.xml
內找到這些綁定。
讓這兩個單獨文件的目標是區分定義它包含的階段的生命週期和定義插件的哪些目標應該綁定到該生命週期的哪些階段的打包。
謝謝。我的誤解是基於這本在線書: https://books.sonatype.com/mvnref-book/reference/lifecycle-sect-package-specific.html 它使用表達式「包特定的生命週期」,但我同意你的觀點。 –
@FernandoCosta這本Maven書是非常好的資源。是的,「包特定的生命週期」的標題可能有點誤導(因爲它只是默認的),但後面的文本是正確的。生命週期的配置發生變化,而不是生命週期本身。 – Tunaki
當然,這是非常好的。我從閱讀中學到很多東西。 –
- 1. 在Maven 2中定義自定義生命週期階段
- 2. 哪裏可以找到一些maven生命週期文檔
- 3. Maven快照「生命週期」
- 4. Maven站點生命週期
- 5. 瞭解Maven生命週期
- 6. 生命週期中未涉及的Eclipse Luna maven-jar-plugin執行
- 7. 在maven站點生命週期中存在哪些範圍
- 8. Maven的清潔生命週期
- 9. Dockerfile中的Maven生命週期
- 10. Maven的生命週期映射
- 11. Flex自定義組件生命週期
- 12. 如何我自定義生命週期
- 13. 竹階段和Maven生命週期
- 14. Maven Mojo未知生命週期階段
- 15. 更改jaxws-maven-plugin生命週期
- 16. Maven多模塊項目生命週期
- 17. M2Eclispe支持Maven生命週期擴展
- 18. maven如何知道運行哪個生命週期?
- 19. Maven安裝生命週期階段不調用資源階段
- 20. maven安裝生命週期不會執行驗證
- 21. 在Maven中,我如何定製生命週期階段?
- 22. 在哪裏把JAR包含自定義螞蟻任務?
- 23. maven確定插件的默認生命週期階段
- 24. Maven自定義包裝
- 25. 在函數內部定義的C++對象的生命週期
- 26. 在Maven嘗試解決它之前,將本地jar依賴項作爲生命週期的一部分安裝
- 27. 在Intellij中運行Maven生命週期目標時指定maven選項
- 28. JQuery插件體系結構,在哪裏定義對象和變量的生命週期?
- 29. ReactJS:this.state在生命週期鉤子上是未定義的
- 30. Android生命週期,哪些生命週期方法在方向更改期間在相同消息中執行?
爲什麼要創建自定義包裝? – khmarbaise
我的團隊需要自動化PL/SQL項目的構建過程(編譯,運行測試,打包和部署)。 Maven足夠靈活,可用於非Java項目。所以,我們開始創建一些自定義插件和一個新的包裝類型。 –