2012-02-28 100 views
0

我有兩個maven項目,第二個項目擴展了第一個項目的一些類。我想用第一個項目的所有依賴項創建jar文件,並將其作爲依賴項包含到另一個項目中。我很長時間以來一直在尋找這種方法,是否有可能做到這一點?Maven將依賴關係複製到另一個項目

我是新來的maven,任何幫助,將不勝感激。

感謝

回答

1

如果你只是想依賴添加到您添加第二個項目依賴於你的新項目,並第一個將被繼承,並自動列入其他項目。這就是所謂的傳遞依賴。在免費書籍Maven: The Complete Reference中閱讀更多關於它的信息。

+0

感謝Manfred Moser! – Arsalan 2012-03-07 14:17:04

0

如果我理解你的權利,你要創建一個包含所有依賴關係的尤伯杯罐子,對不對?

請參考這個問題How can I create an executable JAR with dependencies using Maven?

+0

感謝Olovier,我已經創建了jar與依賴關係,現在我想包括作爲依賴另一個maven項目(在pom文件中),以便它將從我的本地.m2文件夾中選取。 – Arsalan 2012-02-28 16:39:51

0

在第二個項目的POM文件中,指定「依賴」部分下的第一個項目maven座標(groupId,artifactId,版本,打包)。它會過渡地獲取所有依賴的工件。

雖然Maven有可能生成一個獨立的jar及其所有的依賴關係。爲此,您可以使用maven-shade-plugin。 (Reference

0

有兩種方法可以創建一個胖罐子。你將罐子本身包含在依賴罐子裏。在這種情況下,你不會有太多的控制,maven assembly plugin會完成這項工作。或者,您可以解壓縮jar並將所有內容壓縮到一起以創建新的jar。你必須決定哪一個最適合你。如果你有同一個類的多個版本,那麼在新的jar中包含整個jar會有所幫助,但是如果這些版本是連貫的,最好通過解壓和壓縮所有東西來創建jar。對於第二個程序,我建議使用maven shade plugin來創建超級罐子。

相關問題