依赖就是项目里运行的jar 一个项目可以设置多个依赖
这种的
1.依赖传递
直接依赖:就是当前自己的项目pom里的依赖
间接依赖:在自己pom文件引入别人的项目 就能共享到别人项目的依赖
2.依赖传递冲突问题
路径优先:出现相同依赖,层级越深,优先级最低,浅就高
特殊优先:当同级配置相同的不同版本,后配置的先覆盖先配置的
声明优先:相同层级被依赖时 配置顺序靠前的覆盖后面的
3.可选依赖
就是自己项目的依赖做一个隐藏 不被别人看到
在你的依赖加一个这个就可以了
<optional>true</optional>
4.排除依赖
就是2的项目不想用3的项目其中的依赖 (就是你传递过来 我不要)就可以用这个主动断开 不需要加版本号 因为是排除所有的 在你2项目操作
5.依赖范围
依赖jar默认在任何地方都可以使用,通过scope标签设定他范围
作用范围:
1.主程序(mian)范围有效
2.测试(test)范围有效
3.是否参与打包(package)范围
有多个选择
6.依赖范围传递性
相当于项目1的
相当于项目2的
这两个图了解一下就行
7.生命周期与插件
生命周期相当于你几岁
插件相当于你几岁该干的事
goal可以打多个比如 war
execution是代表执行
phase是在什么阶段干这个事情