天天看點

junit依賴_Maven 依賴中的 dependencies 和 dependencyManagement

有時候我們對 dependencies 和 dependencyManagement 可能會有點暈。

我們簡單來說這個就常考慮在 parent pom 中定義的情況。

簡單來說就是

dependencyManagement

管版本,

dependencies

管依賴。

dependencies

所有在 dependencies 中定義的依賴都會被在子項目中自動引入,并被子項目繼承。

dependencyManagement

dependencyManagement 提供的是版本号的管理方式。

舉個常用的例子:

如果我們在 parent pom 中定義了:

<dependency>

<groupId>org.junit.jupiter</groupId>

<artifactId>junit-jupiter-engine</artifactId>

<version>5.6.1</version>

<scope>test</scope>

</dependency>

那麼在子 pom 中,就不需要重新定義

<artifactId>junit-jupiter-engine</artifactId>

的版本号了,子項目會到父項目中去找 junit-jupiter-engine 的版本号。當然你也可以在子項目中定義 junit-jupiter-engine 的版本号。

這個允許你來選擇與父版本不同的版本号。

junit依賴_Maven 依賴中的 dependencies 和 dependencyManagement

差別和使用

如果你想定義一個 jar 或者 Package 在所有子項目都使用的話,你需要使用 dependencies 來進行定義。這樣所有你在 dependencies 中定義的 Package 将會自動被導入到子項目中。

dependencyManagement

隻是聲明依賴,并不實際導入 Package。是以在

dependencyManagement 中聲明的 Package 還必須在子項目中再聲明一次。

https://www.ossez.com/t/maven-dependencies-dependencymanagement/578