一.目的
- 最近因为在做微服务项目需要用到聚合工程,主要为了统一版本,便于管理,项目的POM看着比较简洁,所以了解并记录一下。
二.实战
- 使用SprignBoot创建的项目为父工程,Maven或者SpringBoot项目为子工程.
2.1创建父工程
- New→Project→创建SpringBoot项目→添加web依赖(随便你)→一直到底,并删除出POM文件之外的东西。
- 项目当前结构如下
2.2创建子项目
- Maven
Maven项目创建好的时候,就是父项目的子模块,不需要修改POM文件,只需要添加手动添加启动类,添加项目结构即可.
father:POM文件
<modules>
<module>son1</module>
</modules>
son1:POM文件
<parent>
<artifactId>father</artifactId>
<groupId>com.lll</groupId>
<version>0.0.1-SNAPSHOT</version>
</parent>
添加启动类,添加包结构,就可以使用了。
- SpringBoot
SpringBoot项目创建的时候是一个单独的项目,需要我们自己去修改POM来完成父子项目的依赖关系。
father:POM文件
<modules>
<module>son1</module>
//添加下面这个
<module>son2</module>
</modules>
son:POM文件
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
//删除其他修改父类的归属
<parent>
<groupId>com.lll</groupId>
<artifactId>father</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<groupId>com.lll</groupId>
<artifactId>son2</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>son2</name>
<description>Demo project for Spring Boot</description>
</project>
- 修改完便可以正常使用父类的jar包
- 如果需要用到SpringCloud,别忘记在父类中添加SpringCloud的版本控制