前言
本篇文章是介绍怎么一步步构建我们的聚合工程,同时也会给大家介绍需要注意哪些事项,特别是在我们实际项目开发中,我们容易犯的错误。
通过IDEA创建项目:
- 第一步创建一个新的工程:
-
- 简单的项目创建搭建成功,因为我们的这个项目是顶级模块,所以特别要注意的地方,需要修改pom文件,因为默认是jar文件:
- 因为我们是聚合工程,首先删除没有的文件,然后创建新的model
注意所有的子模块他们都是jar包依赖与父工程的。
注意
- 我们大家要知道在聚合工程里可以分为顶级项目(顶级工程、父工程)与子工程,这两者的关系其实就是父子继承的关系,子工程在maven里称之为模块(module),模块之间是平级,是可以相互依赖的。
- 子模块可以使用顶级工程里所有的资源(依赖),子模块之间如果要是使用资源,必须构建依赖(构建maven坐标)
- 一个顶级工程是可以由多个不同的子工程共同组合而成。
创建 pojo模块
- 查看创建新的模块
- - 子模块之间创建连接关系—依赖关系
<?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">
<parent>
<artifactId>zcw-foodie-dev</artifactId>
<groupId>com.zcw</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>zcw-foodie-dev-pojo</artifactId>
<dependencies>
<dependency>
<groupId>com.zcw</groupId>
<artifactId>zcw-foodie-dev-common</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
- 快速的创建Mapper模块,–DAO模块
修改mapper模块
因为mapper模块在日常开发中需要引用POJO模块,
<?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">
<parent>
<artifactId>zcw-foodie-dev</artifactId>
<groupId>com.zcw</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>zcw-foodie-dev-mapper</artifactId>
<dependencies>
<dependency>
<groupId>com.zcw</groupId>
<artifactId>zcw-foodie-dev-pojo</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
- 注意一个问题
我们mapper模块引用了POJO模块,而POJO模块又引用了 common模块,那么mapper模块也可以使用common模块里面的方法,
构建service模块
- 修改service模块的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">
<parent>
<artifactId>zcw-foodie-dev</artifactId>
<groupId>com.zcw</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>zcw-foodie-dev-service</artifactId>
<dependencies>
<dependency>
<groupId>com.zcw</groupId>
<artifactId>zcw-foodie-dev-mapper</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
创建一个接口模块
- 修改API 的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">
<parent>
<artifactId>zcw-foodie-dev</artifactId>
<groupId>com.zcw</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>zcw-foodie-dev-api</artifactId>
<dependencies>
<dependency>
<groupId>com.zcw</groupId>
<artifactId>zcw-foodie-dev-service</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
构建项目—安装
- 控制台打印成功,才能说明我们的聚合项目创建成功,同时我们不进行安装,各个子模块是无法进行方法构建的
总结
虽然我们创建这个聚合工程看似简单,但是我们在日常开发中会出现很多马虎现象,有时候在创建顶级模块时,忘记编写packing 标签为pom ,因为默认为jar文件,同时有时候我们在编写时构建步骤不对,导致没有生成modules标签,启动时报错,所以我们大家在构建项目时,一定要注意一点的是构建完成以后我们一定要查看我们的顶级pom文件,看看modules是否创建成功。