本文主要是介绍maven多模块使用( pom.xml 中 <modules> 实现子父模块组合),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。
一个多模块项目通过一个父POM 引用一个或多个子模块来定义。父项目,通过以下配置,将子项目关联。
<packaging>pom</packaging>
<modules> <module>mi-admin</module> <module>mi-admin/modules</module>
</modules>
其中值得注意的是<packaging>pom</packaging>这个父项目不像之前的项目那样创建一个JAR 或者一个WAR,它仅仅是一个引用其它 Maven 项目的POM。pom.xml 中下一部分列出了项目的子模块。这些模块在modules元素中定义,每个 modules 元素对应了一个 simple-parent/ 目录下的子目录。Maven 知道去这些子目录寻找pom.xml 文件,并且,在构建的 simp-parent 的时候,它会将这些子模块包含到要构建的项目中。
当然,仅仅在父项目,配置子项目是不能够真正实现关联的,因为,这毕竟需要子项目的同意,故!子项目中需要配置:
<parent> <groupId>org.sonatype.mavenbook.ch06</groupId> <artifactId>simple-parent</artifactId> <version>1.0</version> <!-- 复制 父类定义的这些就行--></parent>
现在,通过父pom.xml将2个子项目进行了关联,那么我们需要从 simple-parent 项目运行 mvn clean install 命令,将2个子项目打包,编译为一个项目!
当 Maven 执行一个带有子模块的项目的时候,Maven 首先载入父POM,然后定位所有的子模块 POM。Maven 然后将所有这些项目的POM 放入到一个称为 Maven 反应堆(Reactor)的东西中,由它负责分析模块之间的依赖关系。这个反应堆处理组件的排序,以确保相互独立的模块能以适当的顺序被编译和安装。
另也可以看看此文:https://www.jianshu.com/p/8541dbb961fc
这篇关于maven多模块使用( pom.xml 中 <modules> 实现子父模块组合)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!