模块聚合

多模块的构建维护

对于现在这些模块,他们都会发布在本地仓库,并且他们是层层依赖递进的

 

 

 

问题分析

 

 

 这时侯,如果ssm_dao模块更新后(重新install了一次),其余的并不知道。如果这次更新做的调整导致其他模块不能够正常的使用该模块,那么整个项目的无法启动。

解决方案

最好是这些模块同时进行更新,所有最好有一个新的根(root)模块负责管理这些模块。只要这个根模块一更新(编译,安装…),其余的模块就跟着更新。而这种工作方式就叫做聚合

 

 

 

模块聚合示例

 

 

 

新建ssm模块 移除src目录

 

修改ssm模块的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>

    <groupId>com.tian</groupId>
    <artifactId>ssm</artifactId>
    <version>1.0-SNAPSHOT</version>
    <!--定义该工程用于进行构建管理-->
    <packaging>pom</packaging>

    <!--管理的工程列表-->
    <modules>
        <!--具体的工程名称 最好是安装依赖的顺序写-->
        <module>../ssm_pojo</module>
        <module>../ssm_dao</module>
        <module>../ssm_service</module>
        <module>../ssm_controller</module>
    </modules>
</project>

 

 现在ssm模块就成为了根模块

 

 

 

测试

 

 

 

结论:

 

 

总结

 

 

 打包方式分析

示例:
<packaging>war</packaging>
  • jar: 普通工程(默认)
  • war: web工程
  • pom: 聚合工程
posted @ 2022-12-21 19:22  快了星球  阅读(33)  评论(0)    收藏  举报