场景一:
我们一个项目,如何依赖我们另一个项目:
把另一个项目的坐标复制进去,再刷新一下maven即可。
情景:
项目3里有依赖:比如log4j,junit。那么项目2依赖了项目3,项目3里的依赖,项目2也可以用。
名词:依赖传递
情景:
项目2中,log4j直接依赖是一个版本,间接依赖了一个版本,用哪个版本。
名词:
声明优先:
比如下图:2度的框的两个一样,就看1度的谁配在前面,就用谁的2度的。
特殊优先:(maven高级会有知识解决这个神经病问题)
不小心忘了结果配多了:后面的优先
如下图:刷新maven后,右边显示的是下面那个
情景
我的一个项目依赖,我不想让依赖我的项目用,让他看不见我用的依赖:
如下图,比如不想让2看见我用了junit:
处理:
加个如下optional坐标并且配成true
注意:只有自己写的项目的pom文件能改所以只能屏蔽自己项目的,
人家的项目比如junit里的依赖是人家的无法编辑,无法屏蔽。
情景:
不想依赖我们依赖的项目的jar包:你传递过来的我不要
比如下图:我自己有log4j,你传的我不想要
处理