我有三個獨立的項目(A,B和C)。可以Maven自動構建未找到的依賴項嗎?
項目B和C依賴項目A生成的jar。
如果未找到依賴項,Maven是否有能力自動構建項目A?
到目前爲止我發現的答案是指示製作其他2個項目模塊(我認爲這意味着存儲庫佈局並將它們合併到項目A中)並創建父/子pom。
一個簡單的「不」也是我的結論之一。
看來好像是我在B和C中創建項目A的模塊,maven並不真的那麼喜歡它。 Maven能否在構建時間內看到當前項目範圍之外的項目?對不起,如果這有點羅嗦。
我有三個獨立的項目(A,B和C)。可以Maven自動構建未找到的依賴項嗎?
項目B和C依賴項目A生成的jar。
如果未找到依賴項,Maven是否有能力自動構建項目A?
到目前爲止我發現的答案是指示製作其他2個項目模塊(我認爲這意味着存儲庫佈局並將它們合併到項目A中)並創建父/子pom。
一個簡單的「不」也是我的結論之一。
看來好像是我在B和C中創建項目A的模塊,maven並不真的那麼喜歡它。 Maven能否在構建時間內看到當前項目範圍之外的項目?對不起,如果這有點羅嗦。
如果A,B和C是普通容器項目的模塊,則該方案工作正常。
從根的pom.xml:
<modules>
<module>project-a</module>
<module>project-b</module>
<module>project-c</module>
</modules>
其中,「項目一」等都是父文件夾內的Maven項目文件夾的名稱。
父項目必須有<packaging>pom</packaging>
才能正常工作。
然後,您可以構建父項目,並按順序構建所有子項,也可以使用其中一個高級Maven反應器標誌。
例如mvn clean install -pl project-b
將只生成項目B.
欲瞭解更多信息,請執行mvn --help
並從Maven By Example書中閱讀the multi modules chapter。
但這個問題:
確實Maven的具有自動構建一個項目的能力,如果 依賴沒有找到?
......答案總是否定的。如果未找到依賴項,Maven會失敗,但它永遠不會決定要構建哪個項目。您負責哪些項目需要構建。
我知道這個場景有效,我有這個場景的工作。我有的問題是,如果B和C不在普通容器中,那將如何工作? B和C在他們自己的獨立容器中。 – ResourceReaper
@JoshGooding這不是如何maven的作品。 Maven不會構建不在當前工作目錄內的項目(或者通過模塊中的相對路徑引用) –