之前没有时间对项目进行整理,现在能够闲下来写一些东西了。今天主要说明的是maven创建聚合工程的方法。
创建过程
1、首先创建一个正常的maven项目
2、删除src目录(聚合项目最外层不需要编码,只是把各个木块进行整合)
3、修改项目的pom文件,修改packaging标签的属性
<!-- 一般来说父级项目的packaging都为pom,packaging默认类型jar类型--> <packaging>pom</packaging>
项目的配置最终如下:
<?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>
<groupId>gaven.com</groupId>
<artifactId>cloud_alibaba</artifactId>
<version>1.0-SNAPSHOT</version>
<!-- 一般来说父级项目的packaging都为pom,packaging默认类型jar类型-->
<packaging>pom</packaging>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<springboot.version>2.3.3.RELEASE</springboot.version>
<springcloud.dependencies>Hoxton.SR8</springcloud.dependencies>
<springcloud.alibaba.dependencies>2.2.1.RELEASE</springcloud.alibaba.dependencies>
</properties>
<dependencyManagement>
<dependencies>
<!--https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-dependencies/2.3.3.RELEASE-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>${springboot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!--https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-dependencies/Hoxton.SR8-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${springcloud.dependencies}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!--https://mvnrepository.com/artifact/com.alibaba.cloud/spring-cloud-alibaba-dependencies/2.2.1.RELEASE-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>${springcloud.alibaba.dependencies}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
</project>
4、创建新的模块model,和maven项目的步骤相同
之后创建的这些项目就会加到父pom中
<modules>
<module>xdclass-user-service</module>
<module>xdclass-video-service</module>
<module>xdclass-common</module>
<module>xdclass-order-service</module>
</modules>
5、添加子项目的依赖
6、执行mavne命令 instal项目
-
注意: 有些包maven下载慢,等待下载如果失败
- 删除本地仓库spring相关的包,重新执行 mvn install
parent 用dependencyManagement 加版本号 通过common传递(父项目只指定版本号)