前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >maven多模块使用( pom.xml 中 实现子父模块组合)

maven多模块使用( pom.xml 中 实现子父模块组合)

作者头像
微风-- 轻许--
发布2019-08-01 15:07:41
6K0
发布2019-08-01 15:07:41
举报
文章被收录于专栏:java 微风java 微风

转自:https://cloud.tencent.com/developer/article/1478429

一个多模块项目通过一个父POM 引用一个或多个子模块来定义。父项目,通过以下配置,将子项目关联。

代码语言:javascript
复制
<packaging>pom</packaging>  
<modules>  
    <module>mi-admin</module>  
    <module>mi-admin/modules</module>  
</modules>  
代码语言:txt
复制
 其中值得注意的是<packaging>pom</packaging>这个父项目不像之前的项目那样创建一个JAR 或者一个WAR,它仅仅是一个引用其它 Maven 项目的POM。pom.xml 中下一部分列出了项目的子模块。这些模块在modules元素中定义,每个 modules 元素对应了一个 simple-parent/ 目录下的子目录。Maven 知道去这些子目录寻找pom.xml 文件,并且,在构建的 simp-parent 的时候,它会将这些子模块包含到要构建的项目中。
代码语言:txt
复制
 当然,仅仅在父项目,配置子项目是不能够真正实现关联的,因为,这毕竟需要子项目的同意,故!子项目中需要配置:
代码语言:javascript
复制
    <parent>  
        <groupId>org.sonatype.mavenbook.ch06</groupId>  
        <artifactId>simple-parent</artifactId>  
        <version>1.0</version>  
    <!-- 复制 父类定义的这些就行-->
    </parent>  
代码语言:txt
复制
 现在,通过父pom.xml将2个子项目进行了关联,那么我们需要从 simple-parent 项目运行 mvn clean install 命令,将2个子项目打包,编译为一个项目!
代码语言:txt
复制
 当 Maven 执行一个带有子模块的项目的时候,Maven 首先载入父POM,然后定位所有的子模块 POM。Maven 然后将所有这些项目的POM 放入到一个称为 Maven 反应堆(Reactor)的东西中,由它负责分析模块之间的依赖关系。这个反应堆处理组件的排序,以确保相互独立的模块能以适当的顺序被编译和安装。

另也可以看看此文:https://www.jianshu.com/p/8541dbb961fc

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019年07月24日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档