只是记录相关知识点,方便后续查看。
一:Jar包冲突解决
推荐使用第三种。在<dependency></dependency>下配置<exclusions> </exclusions>标签排除依赖。
在idea中可以从Maven Project中的Show Dependences查看当前项目的maven依赖树。
二:锁定Jar包
pom.xml中有个<dependencyManagement></dependencyManagement>标签,它是用来锁定主要jar包的。版本号用<Property>标签来自定义。它下面声明的jar包不会被直接引用进项目,但是可以让当前项目在被引用的时候这些jar不被覆盖。如果项目中要想使用标签下的jar包,还要在外面用<dependencies>引入。
三:父子模块以及工程模块区别,依赖和继承
父模块可以什么都不要不要main不要resource,但是必须有一个pom.xml文件。在父模块的基础上建立modules。父工程的打包package为pom模式。建立之后在父pom.xml中会自动添加一个<modules>标签。管理子模块。子模块之间建立好之后是没有关系的,如果一个模块想要使用另一个模块的内容需要手动引用。由于每个模块使用的技术不一样,他们的pom肯定也是不一样的。
<注意!>各个子模块有引用关系之后,同一个目录下资源,其实都可以传递。service模块下其实有dao的配置文件。
父子工程启动本地启动的话,
1:可以直接在Maven Project下启动父工程。
2:如果从子工程启动,记得要在在父工程下进行install,把模块都安装到本地仓库。
父工程中可以使用<dependencyManagement>标签管理依赖,在这个里面生命的依赖,在子模块中不会被自动引入。如果子模块想使用需要手动引入。