maven构建项目依赖版本确定
在使用maven管理Java项目依赖时,每个依赖的版本是如何确定的呢?
maven依赖决策
maven有两条依赖决策原则:
版本确定
在确定依赖版本时,需要考虑以下因素:
-
parent标签:如果pom包含标签,它将统一项目中依赖的版本。
-
properties定义:如果标签中声明的版本不是期望版本,可以在当前pom中使用定义覆盖。

-
dependencyManagement:用于统一管理依赖版本。
-
第三方bom:第三方bom可以统一管理版本,先声明的bom版本优先。
-
多个bom:如果有多个bom管理同一个库的版本,先声明的bom版本优先。
确定运行时版本
要确定运行时具体使用的jar版本,可以采用以下方法:
-
Maven Helpher插件:在idea中安装Maven Helpher插件,使用Dependency Analyzer标签查看红色依赖。
-
导入具体类:在项目启动类中导入某个jar中的具体类,然后通过Project标签和Select Opened File确定版本。