maven依赖问题

项目A依赖了项目B,项目B中依赖了commons-io。所以项目A中也间接依赖了commons-io

IDEA编辑器中进行开发时,使用了commons-ioFileUtils类,运行没有问题,但是在进行maven打包时,会报错相关的类找不到符号。

在编辑器中可以看到该类依赖的是commons-io:2.11.0,但是在maven打包时,会报错找不到符号。同时可以看到编辑器中显示还有其他版本的commons-io20240617175156 这说明可能是依赖了多个版本导致的。

使用mvn dependency:tree解析依赖关系,发现确实是通过其他项目间接依赖的commons-io的其他版本。

Maven在解析依赖时,如果遇到了多个版本的同一个依赖,它会选择路径最短的那个。当多个版本路径层级相同时,按列出顺序选择第一个。

这种情况最好是在pom文件中直接添加对commons-io的依赖,或者使用<dependencyManagement>元素来管理依赖的版本。

上次更新: 2024/06/17, 11:58:14
最近更新
01
go-admin-ui项目仿写练手1-登录页
06-29
02
JVM相关命令
02-21
03
Docker Compose部署ELK系统
01-08
更多文章>