Maven POM文件、多模块以及依赖关系
来源:互联网 发布:中国自主软件 编辑:程序博客网 时间:2024/06/05 15:23
一、POM.XML
1、ProjectObject Model:项目对象模型
2、基本项:
- project:pom.xml的顶级元素。
- groupId:指出创建这个工程的组织或团队的唯一标识。
- plugins:插件。
- artifactId:基本名称。
- packaging:类型(如JAR、WAR、EAR等等),默认是JAR,所有带有子模块的项目的packaging
都为pom。
- version:版本号。
- modelVersion:指出POM使用哪个版本的对象模型。
二、多模块
1、如何创建
参考:http://www.cnblogs.com/quanyongan/archive/2013/05/28/3103243.html
2、为什么要分多模块
软件公司通常的一种做法就是将多个项目构建到主要产品中。维护依赖关系链和一次性地构建整个产品足以成为一个挑战,但是如果使用Maven的话,事情将变得简单。如果您创建了一个指向其它子模块的 pom.xml父文件,Maven将为您处理整个构建过程。它将分析每个子模块的pom.xml文件,并且按照这些子模块的相互依赖顺序来构建项目。如果每个项目明确地指明它们的依赖项,那么子模块在父文件中的放置顺序是不造成任何影响的。但是考虑到其他的开发者,最好保证子模块在pom.xml父文件中 的放置顺序和您期望的子项目被构建的顺序一样。
参考:http://juvenshun.iteye.com/blog/305865
3、依赖另一个项目的子模块
A项目下有2个子模块A1,A2;B项目下有3个子模块B1,B2,B3;
A1依赖B1和A2; A2依赖B2,B3;
则,需要先运行B项目,成功之后再运行A项目。
三、依赖关系
1、简介
参看:管理依赖
2、scope参数
指定依赖项在何种阶段是所需的。
<dependency> <groupId>aa</groupId> <artifactId>aa</artifactId> <version>1.5.1</version> <scope>compile</scope></dependency>
——》参数值:
- compile:默认值。表示是所有任务所需的资源,会随项目一起发布。
- test:用于编译和运行测试代码时所需的资源,不会随项目发布。
- runtime:运行时所需的资源,如JDBC驱动。
- provided:类似compile,JDK部分或应用服务器的classpath所需的资源,期望JDK、容器
或使用者会提供这个依赖,如servlet.jar。
- system:类似provided,必须指定systemPath,需要显示提供依赖的jar,
maven不会在Repository中查找。
0 0
- Maven POM文件、多模块以及依赖关系
- 【maven】ITOO POM文件依赖关系
- Maven POM文件详解以及继承关系
- 相关 maven 依赖(pom.xml 文件)
- maven学习日记二 多模块开发依赖关系建立
- Maven多模块依赖
- 为了后面自动化部署,需要整理公司项目的maven依赖关系,eclipse下maven组件的安装以及用eclipse构建maven多模块工程(即有父子依赖关系的工程)遇到一个class not fond
- maven依赖pom.xml
- [Maven]2, pom文件以及三个生命周期
- IDEA中,Maven项目POM文件中的依赖未报错(出现红色波浪线),但Maven Projects中的模块的Dependencies中的依赖却报错
- maven--pom文件搜索依赖的jar包
- Maven Pom 文件中的隐式依赖导致Jar冲突
- Maven Pom 文件中的隐式依赖导致Jar冲突
- Maven资源库pom文件引入依赖jar包的
- maven工程spring3.x pom文件依赖配置
- maven依赖报错,pom文件红叉
- Maven Pom 文件中的隐式依赖导致Jar冲突
- MAVEN pom.xml文件添加依赖报错
- CF 392 B. Tower of Hanoi 记忆化搜索
- Three matrices
- HDU 2167 Pebbles_状压求点集的最大权值和
- 根据id生成不重复的邀请码
- 【OpenCV学习笔记】【函数学习】六(cvCreateImage()函数)
- Maven POM文件、多模块以及依赖关系
- 用 SDK Manager.exe 无法更新 Android SDK Tools 的解决办法
- 四、子类继承父类要注意以下几点
- wuauclt.exe进程和wuauclt病毒的查杀清理方法
- nginx新手教程
- Extracting Files from RPM Packages
- Vijos P1615 旅行
- cisvc.exe进程占用大量内存和CPU的解决方法
- HBase集群出现NotServingRegionException问题的排查及解决方法