两个模块涉及的依赖引入问题
问题 1:api 模块发布后,b 项目如何获取依赖版本号?
部署 api 模块时,虽然没有包含其父项目 pom 文件中的版本号信息,但 b 项目在导入时仍能下载正确版本依赖,主要是因为:
- api 模块父项目 pom 文件位于 b 项目的本地 maven 仓库中(已通过安装命令安装)。
- b 项目导入时,会自动从本地 maven 仓库(存在 a 项目 pom 文件)获取 api 模块引用的依赖版本信息。
解决方案:
发布 api 模块时,禁止递归部署,避免未发布的父项目也一起发布。
问题 2:避免 api 和 b 项目的依赖冲突
api 模块与 b 项目都引用了 mybatis-plus,但版本不同,导致依赖冲突。除了修改 b 项目版本以外,可以通过排除机制解决冲突:
在 b 项目的 pom 文件中,排除 api 模块中引用的 mybatis-plus 依赖:
xxxx module-api com.baomidou *










