Maven dependencyManagement相关问题

来源:3-1 集成持久层框架Mybatis

0x0wh04m1

2020-04-16

老师,我想请教几个问题:
1.我想引入lombok,我不想在每个子模块中再引入一遍,我放到父pom与dependencyManagement同级的dependencies标签里也是合理的吧?这个是因为看视频中您说父模块不再是个springboot项目所以就把dependencies标签都删掉了。
2.是不是使用父子模块这种形式,在dependencyManagement配置要管理的相关依赖的时候都是要配置一个版本号子模块中才能正确引入呢?我在学习的时候,父poom中忘记配置mybatis-spring-boot-starter的版本了,导致在system的依赖中报红线,它的版本号信息那块显示的是unknown,后来在父pom中配置了版本号就好了。这里提出这个问题主要是因为之前在使用springboot单体项目的时候,一般都是不用引入版本号的,不知道为什么此处又需要配置版本号了。
希望老师有空能解答一下,谢谢!

写回答

1回答

甲蛙

2020-04-16

1. 你要引入第三方的jar,如lombok,应该在父pom的dependencyManagement定义(这里要加版本号),在server模块的pom里增加依赖(不用版本号),server模块是公用的,引入一次,其它模块都可用

2. 同第1点,在父pom的dependencyManagement要加版本号,在下面的子模块就不需要了加版本号了,达到版本号统一管理的目的。

springboot单体的时候,不需要版本号,那是因为你定义了parent,如下,官方给你定好了版本号了

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.1.6.RELEASE</version>
</parent>


1
1
0x0wh04m1
谢谢老师的解答,说得很明白了,感谢~
2020-04-16
共1条回复

Spring Cloud+ Vue前后端分离开发企业级在线视频系统

全网稀缺课程 市场热门项目+主流框架 一课掌握前后端技术

1743 学习 · 1697 问题

查看课程