Maven 记录

常用依赖的配置项

  • groupId、artifactId 和 version:控制依赖包的基本坐标

  • type:依赖的类型,对应项目坐标的 packaging 配置

  • scope:依赖的范围

  • optional:控制依赖是否可选

  • exclusions:控制排除传递性依赖

依赖范围与 classpath 的关系

依赖范围 Scope编译有效测试有效运行时有效
compile Y Y Y
test - Y -
provided Y Y -
runtime - Y Y
system Y Y -

传递性依赖和依赖范围

第一直接依赖/第二直接依赖compiletestprovidedruntime
compile compile - - runtime
test test - - test
provided provided - provided provided
runtime runtime - - runtiome

依赖调解

  • 路径最近者优先

  • 第一声明者优先

可选依赖

A -> B、B -> X(可选)、B -> Y(可选) 时,X,Y 不会传递到 A,对 A 不会有任何影响。

 

 

 

posted @ 2020-07-14 18:07  演说家  阅读(43)  评论(0)    收藏  举报