Maven聚合工程

一、概念

image-20220326234743721

  • 两个组件之间的互相调用必须要被打包在同一个jar包中

二、创建聚合工程

2.1 创建父工程

  • 创建一个maven工程

  • 修改父工程的pom.xml文件,设置打包方式为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>org.example</groupId>
        <artifactId>Maven-pro</artifactId>
        <version>1.0-SNAPSHOT</version>
        <packaging>pom</packaging>
    
    </project>
    
  • 父工程用于管理子工程,不进行业务实现

2.2 创建Module

  • 创建新module子工程

  • 子工程继承父工程

    <?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>Maven-pro</artifactId>
            <groupId>org.example</groupId>
            <version>1.0-SNAPSHOT</version>
        </parent>
    
        <modelVersion>4.0.0</modelVersion>
        <artifactId>common</artifactId>
    
    </project>
    
  • 父工程声明子module

    <?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>org.example</groupId>
        <artifactId>Maven-pro</artifactId>
        <version>1.0-SNAPSHOT</version>
        <modules>
            <module>common</module>
        </modules>
        <packaging>pom</packaging>
    
    </project>
    
  • 子模块组件直接调用

image-20220327095122365

易错点:一定要注意打包路径名称不要写错了,不然就会找不到包路径,报unkown的错误

三、Maven依赖继承

3.1 依赖继承

  • 在父工程pom中添加的依赖都会被子工程继承
  • 子工程pom中单独添加的依赖,父工程无法引用

3.2 依赖版本管理

  • 父工程pom中的dependencyManagement中定义的依赖,子工程若想使用,必须在pom中再次定义,但是不需要添加版本,版本默认被父工程的dependencyManagement管理

image-20220327102640675


文章作者: 寜笙
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 寜笙 !
 上一篇
2022-03-27 寜笙
下一篇 
2022-03-26 寜笙
  目录