只能導入管理依賴。這意味着您只能將導入其他POM到項目POM的dependencyManagement
部分。即
...
<dependencyManagement>
<dependencies>
<dependency>
<groupId>other.pom.group.id</groupId>
<artifactId>other-pom-artifact-id</artifactId>
<version>SNAPSHOT</version>
<scope>import</scope>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>
...
那麼,什麼情況是,在other-pom-artifact-id
的dependencyManagement
節中定義的所有依賴性都包含在你的POM的dependencyManagement
部分。然後,您可以參考在你的POM的dependency
部分這些依賴關係(及其所有子多金屬氧酸鹽),而不必包括version
等
但是,如果在你的POM你簡單地定義一個正常的依賴性other-pom-artifact-id
那麼所有dependencies
從該other-pom-artifact-id
的dependency
部分都包含在及物動詞你的項目 - 但是在other-pom-artifact-id
的dependencyManagement
部分定義的依賴不會被包括在內的。
所以基本上兩種不同的機制被用於導入/包括兩種不同類型的依賴關係(管理依賴性和正常的依賴關係)。
在maven網站上有一個很好的頁面,它可以解釋得這麼好,我可以,Dependency Management in Maven,它還包含importing dependencies的具體信息。
來源
2012-08-02 14:14:28
DB5
如果'pom'一個在爲'pom' B的父母,你能不能把項目A的依賴管理B帶範圍'import'? – 2016-10-26 15:11:46
很好的解釋它是如何工作的,但是爲什麼?爲什麼你不想過渡地包含其他依賴項?你也可以做兩個嗎?導入other-pom-artifact-id,然後聲明other-pom-artifact-id爲依賴關係? – 2016-11-11 10:15:08
一篇文章上DZone規定不同的東西:'... <依賴性> $ {} project.groupId pomlib-lib的 POM 進口 $ { project.groupId} pomlib-war w AR 依賴> '[DRY和Skinny戰爭(https://dzone.com/articles/dry-and-skinny-war) –
coz
2017-03-29 15:34:15