Maven是用来管理项目的,按道理是可以实现一个项目引用另一个项目。如果被引用的项目本身就引用了jar包呢?例如junit jar包呢?
Maven 09.依赖传递


例子:
HelloWorldTime -->HelloWorld2 ---->Test

还没有修改pom.xml之前的HelloWorldTime jar包情况Maven 09.依赖传递
写入对HelloWorld2项目的依赖
Maven 09.依赖传递
同时HelloWorld2中的pom.xml中阐述的对junit的依赖关系,这里的对junit的有效性范围是test
Maven 09.依赖传递

更新update maven后:HelloWorldTime的jar包情况没有发生改变


把HelloWorld2中的对junit的依赖改成compile后:

Maven 09.依赖传递

结果:HelloWorldTime的jar包情况出现了junit
Maven 09.依赖传递

依赖的原则:
01.就近。
Maven 09.依赖传递
maven会选择3.8
02.相同的路径的话,谁在前面谁优先。(一个pom.xml文件中是不允许依赖两个相同的jar包,即使是版本号不同)
Maven 09.依赖传递
这个时候,在HelloWorldTime的pom.xml文件中,对那个项目的依赖先写,那个jar包就会被下载到HelloWorldTime中去。

分类:

技术点:

相关文章: