文档章节

maven进阶:一个多模块项目

铂金蛋蛋
 铂金蛋蛋
发布于 2014/06/04 15:56
字数 506
阅读 317
收藏 3
点赞 0
评论 0

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

[xhtml] view plaincopy

  1. <packaging>pom</packaging>  

  2. <modules>  

  3.           <module>simple-weather</module>  

  4.           <module>simple-webapp</module>  

  5. </modules>  

     其中值得注意的是<packaging>pom</packaging>这个父项目不像之前的项目那样创建一个JAR 或者一个WAR,它仅仅是一个引用其它Maven 项目的POM。pom.xml 中下一部分列出了项目的子模块。这些模块在modules元素中定义,每个modules 元素对应了一个simple-parent/目录下的子目录。Maven知道去这些子目录寻找pom.xml 文件,并且,在构建的simp-parent 的时候,它会将这些子模块包含到要构建的项目中。

     当然,仅仅在父项目,配置子项目是不能够真正实现关联的,因为,这毕竟需要子项目的同意,故!子项目中需要配置:

[xhtml] view plaincopy

  1. <parent>  

  2.         <groupId>org.sonatype.mavenbook.ch06</groupId>  

  3.         <artifactId>simple-parent</artifactId>  

  4.         <version>1.0</version>  

  5. </parent>  

     现在,通过父pom.xml将2个子项目进行了关联,那么我们需要从simple-parent 项目运行mvn clean install 命令,将2个子项目打包,编译为一个项目!

     当Maven 执行一个带有子模块的项目的时候,Maven 首先载入父POM,然后定位所有的子模块POM。Maven 然后将所有这些项目的POM 放入到一个称为Maven 反应堆(Reactor)的东西中,由它负责分析模块之间的依赖关系。这个反应堆处理组件的排序,以确保相互独立的模块能以适当的顺序被编译和安装。

     当,通过父pom.xml进行完成多个子项目的关联后,我们可以像前几章一样,分别进入某个单独的模块,进行运行,以移动程序!

 

 注意:子项目的文件,位于父项目pom.xml同级,也就是,子项目的pom.xml位于父pom.xml的下一级文件中!


本文转载自:http://blog.csdn.net/eclipser1987/article/details/5739177

共有 人打赏支持
铂金蛋蛋

铂金蛋蛋

粉丝 26
博文 63
码字总数 12891
作品 0
杭州
架构师
在Eclipse中创建Maven多模块工程

如果,你需要创建多个项目,项目之间即独立又有关系,那么创建一个Maven多模块项目是个非常好的选择,也非常cool!怎么在Eclipse里面创建多模块工程,以及需要注意哪些地方,我在这里做个简单...

孟飞阳 ⋅ 2016/07/29 ⋅ 0

Maven多模块布局实例详解

一、开场白 使用Maven有段时间了,只能感慨真是个好东西,让我从传统模式体会到了严谨、规范、敏捷、方便的特性。 如果你懂Maven或许看过Juven翻译的《Maven权威指南》; 发个牢骚:由于Mav...

凯文加内特 ⋅ 2015/05/08 ⋅ 2

在Eclipse中创建Maven多模块工程的例子

如果,你需要创建多个项目,项目之间即独立又有关系,那么创建一个Maven多模块项目是个非常好的选择,也非常cool!怎么在Eclipse里面创建多模块工程,以及需要注意哪些地方,我在这里做个简单...

凯文加内特 ⋅ 2015/05/07 ⋅ 1

maven安装与创建多模块项目

maven是一个比较流行的项目管理工具,在最近参与的项目中,也使用了maven,本文主要对在项目中的使用做一个总结,主要涉及maven的安装于配置、maven创建多模块项目。 1、maven安装与配置 ma...

wangyan9110 ⋅ 2014/04/01 ⋅ 0

jeesite使用maven构建多模块企业级应用

Maven多模块项目,适用于一些比较大的项目,通过合理的模块拆分,实现代码的复用,便于维护和管理。尤其是一些开源框架,也是采用多模块的方式,提供插件集成,用户可以根据需要配置指定的模块...

大宝和小宝 ⋅ 2017/06/29 ⋅ 0

创建支持eclipse的多模块maven项目

---title: "[创建支持eclipse的多模块maven项目]" date: 2013-07-19 17:46 创建支持eclipse的多模块maven项目 通过maven可以创建多个关联模块的项目(Multiple Module Projects)。由一个总的...

rkikbs ⋅ 2013/08/08 ⋅ 0

Maven多模块项目介绍和搭建

1Maven多模块项目介绍 为了便于演示和表达,在intellij中建了小项目进行举例,如下图所示 其中web-m2模块,依赖于common-utils, common-utils依赖于common-third,如下图所示 web-m1模块 依...

蛙牛 ⋅ 2014/12/09 ⋅ 35

Maven多模块项目介绍及搭建

对于大型WEB项目的开发一个很重要的部分就是代码的复用和维护管理。但是如果在搭建的时候采用多模块搭建,可以为之后的维护管理及复用提供便利。 接下来是在IntelliJ IDEA中的一个多模块项目...

战五渣 ⋅ 2016/06/13 ⋅ 11

maven 多模块开发,如何划分?请给指导性意见!!!

项目框架准备用 maven+SpringMVC+mybatis 搭建。 我看已经看过 有的人按照 dao service web util 这样划分, 还有的用 domain 里面是 数据模型(实体类)和 service以及 service iml。 将实体...

Hrong123 ⋅ 2015/02/02 ⋅ 5

IDEA下Maven多模块项目介绍和搭建

1Maven多模块项目介绍 为了便于演示和表达,在intellij中建了小项目进行举例,如下图所示 其中web-m2模块,依赖于common-utils, common-utils依赖于common-third,如下图所示 web-m1模块 依...

陶加涛 ⋅ 2016/03/19 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

个人博客的运营模式能否学习TMALL天猫质量为上?

心情随笔|个人博客的运营模式能否学习TMALL天猫质量为上? 中国的互联网已经发展了很多年了,记得在十年前,个人博客十分流行,大量的人都在写博客,而且质量还不错,很多高质量的文章都是在...

原创小博客 ⋅ 今天 ⋅ 0

JavaScript零基础入门——(十一)JavaScript的DOM操作

JavaScript零基础入门——(十一)JavaScript的DOM操作 大家好,欢迎回到我们的JavaScript零基础入门。最近有些同学问我说,我讲的的比书上的精简不少。其实呢,我主要讲的是我在开发中经常会...

JandenMa ⋅ 今天 ⋅ 0

volatile和synchronized的区别

volatile和synchronized的区别 在讲这个之前需要先了解下JMM(Java memory Model :java内存模型):并发过程中如何处理可见性、原子性、有序性的问题--建立JMM模型 详情请看:https://baike.b...

MarinJ_Shao ⋅ 今天 ⋅ 0

深入分析Kubernetes Critical Pod(一)

Author: xidianwangtao@gmail.com 摘要:大家在部署Kubernetes集群AddOn组件的时候,经常会看到Annotation scheduler.alpha.kubernetes.io/critical-pod"="",以表示这是一个关键服务,那你知...

WaltonWang ⋅ 今天 ⋅ 0

原子性 - synchronized关键词

原子性概念 原子性提供了程序的互斥操作,同一时刻只能有一个线程能对某块代码进行操作。 原子性的实现方式 在jdk中,原子性的实现方式主要分为: synchronized:关键词,它依赖于JVM,保证了同...

dotleo ⋅ 今天 ⋅ 0

【2018.06.22学习笔记】【linux高级知识 14.4-15.3】

14.4 exportfs命令 14.5 NFS客户端问题 15.1 FTP介绍 15.2/15.3 使用vsftpd搭建ftp

lgsxp ⋅ 今天 ⋅ 0

JeeSite 4.0 功能权限管理基础(Shiro)

Shiro是Apache的一个开源框架,是一个权限管理的框架,实现用户认证、用户授权等。 只要有用户参与一般都要有权限管理,权限管理实现对用户访问系统的控制,按照安全规则或者安全策略控制用户...

ThinkGem ⋅ 昨天 ⋅ 0

python f-string 字符串格式化

主要内容 从Python 3.6开始,f-string是格式化字符串的一种很好的新方法。与其他格式化方式相比,它们不仅更易读,更简洁,不易出错,而且速度更快! 在本文的最后,您将了解如何以及为什么今...

阿豪boy ⋅ 昨天 ⋅ 0

Python实现自动登录站点

如果我们想要实现自动登录,那么我们就需要能够驱动浏览器(比如谷歌浏览器)来实现操作,ChromeDriver 刚好能够帮助我们这一点(非谷歌浏览器的驱动有所不同)。 一、确认软件版本 首先我们...

blackfoxya ⋅ 昨天 ⋅ 0

线性回归原理和实现基本认识

一:介绍 定义:线性回归在假设特证满足线性关系,根据给定的训练数据训练一个模型,并用此模型进行预测。为了了解这个定义,我们先举个简单的例子;我们假设一个线性方程 Y=2x+1, x变量为商...

wangxuwei ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部