可以看到,在下面三个工程中都没有导入spring-core
这个jar包:
现在呢我们在Hello
这个工程中导入spring-core
这个jar包,在pom.xml
中加入依赖:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.0.0.RELEASE</version>
<scope>compile</scope>
</dependency>
可以看到,连带着HelloFriend
和MakeFriends
这两个工程里面都导入了spring-core
jar包,这就是依赖的传递性.
依赖的传递性的好处:可以传递的依赖不必在每个模块工程中都重复声明,在”最下面”的工程中依赖一次即可
注意:非compile
范围的依赖不能传递.所以在各个工程模块中,如果有需要就得重复声明依赖,