二:Maven中pom.xml元素详解
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6628201.html
一个pom.xml中包含了许多标签,各个标签是对项目生命周期、依赖管理的配置。常用的主要有:
1:<peoject>:pom.xml的根标签,一个maven项目用一对<peoject></project>标签包裹。
2:<modelVersion>:maven的版本
3:当前项目的坐标以及打包方式:
<groupId>:企业网址反写+项目名
<artifactId>:项目名-模块名
<version>:版本号+类型
版本号由三个整数表示,每个整数用“.”分隔,表示:大版本号.分支版本号.小版本号
类型:版本类型。主要有:snapshot快照版本(简化版本)、alpha内测版、beta公测版、release稳定版、GA正式发布版
<packaging>:打包类型,默认是jar,可以配置成war、zip、pom类型。
4:<name>:当前项目名
5:<url>:项目地址
6:<description>:项目描述信息
7:<developers>:开发者信息
8:<licenses>:项目许可证信息,用来发布时授予别人使用此项目的权利
9:<organization>:组织信息,企业信息
以上都是对这个maven项目的相关信息配置。
10:<properties>:属性值标签,也叫变量标签。与Ant中的property一样,可以通过这个标签包含一些属性并指定属性值。那么在pom.xml的其他地方,可以通过EL表达式访问变量的方法——${属性名} 来获取具体的属性值。一般这个用来作为整个pom.xml中需要重复使用的内容或者全局变量使用。
11:依赖标签
<dependencies><!--一个依赖包--> <dependency> <!--通过坐标指定依赖包--> <groupId> </groupId> <artifactId> </artifactId> <version> </version> <!--可选项:依赖范围。有六个可选值:常用compile/provided/test/runtime等--> <scope>一个范围</scope> <!--可选项:排除依赖传递:即:当前项目依赖当前配置的依赖包A时,如果这个依赖包又依赖其他包B,这里可以选择排除依赖的传递性,不下载导入B--> <exclusions> <exclusion>
<!--被排除的依赖包坐标--><groupId> </groupId><artifactId> </artifactId><version> </version>
</exclusion></exclusions> </dependency> </dependencies>
12:依赖管理标签:主要用于制定父pom.xml,其他项目可以继承这个pom.xml,从而避免重复定义某些depency。
<depencyManagement><depencies> <depency> 依赖包的坐标... </depency> </depencies> </depencyManagement>
13:<build>:项目支持标签,一般用来引入插件
<build><plugins> <plugin> <!--插件坐标--> <groupId> </groupId> <artifactId> </artifactId> <version> </version> 其他设置... </plugin> </plugins> </build>
14:<parent>:继承标签,用于继承父项目。
15:<moudules>:聚合标签,用于聚合多个maven项目,这样用某指令执行这个pom就会把聚合的各项目全部执行,同时处理多个项目。
示例:一个简单的构建JavaWeb项目的pom.xml如下:
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.test</groupId> <artifactId>WebApp</artifactId> <packaging>war</packaging> <version>1.0</version> <name>WebApp Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.2.1</version> </dependency> <!--commons-io为commons-fileupload的可选依赖包--> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>1.3.2</version> </dependency> </dependencies> <build> <finalName>WebApp</finalName> </build> </project>
转载于:https://www.cnblogs.com/NiceCui/p/7798779.html
二:Maven中pom.xml元素详解相关推荐
- Maven的pom.xml文件详解------The Basics
转载自 Maven的pom.xml文件详解------The Basics Maven坐标 GroupId.artifactId和version构成了Maven的坐标(groupId和version ...
- Maven的pom.xml文件详解------Environment Settings
转载自 Maven的pom.xml文件详解------Environment Settings Issue Management 使用的缺陷跟踪系统(Bugzilla,TestTrack,Clear ...
- Maven的pom.xml文件详解------Build Settings
转载自 Maven的pom.xml文件详解------Build Settings 根据POM 4.0.0 XSD,build元素概念性的划分为两个部分:BaseBuild(包含poject bui ...
- Maven之pom.xml配置文件详解
一.什么是pom pom代表项目对象模型,它是Maven中工作的基本组成单位.它是一个XML文件,始终保存在项目的基本目录中的pom.xml文件中.pom包含的对象是使用maven来构建的,pom.x ...
- Maven 之 settings.xml 文件详解
文章目录 1 引言 2. settings.xml 元素详解 2.1 根元素settings概览 2.1.1 LocalRepository 2.1.2 InteractiveMode 2.1.3 U ...
- Maven的settings.xml配置详解
Maven的settings.xml配置详解 1 基本介绍 maven的两大配置文件:settings.xml和pom.xml.其中settings.xml是maven的全局配置文件,pom.xml则 ...
- Ehcache 中ehcache.xml 配置详解和示例
EhCache 是一个纯Java的进程内缓存框架,具有快速.精干等特点,是Hibernate中默认的CacheProvider. Ehcache是一种广泛使用的开源Java分布式缓存.主要面向通用缓存 ...
- 详细解读Maven中pom.xml
详细解读Maven中pom.xml 一.POM是什么 二.存放位置 三.基本设置 3.1.头信息 3.2.maven的基本信息 3.3.POM之间的关系 3.3.1.依赖关系 3.3.2 继承关系:继 ...
- Maven学习—setting.xml pom.xml 配置文件详解
一.Maven最重要的两个配置文件 Maven 仓库及相关设置配置文件 setting.xml配置文件可以设置本地仓库目录.远程仓库地址.JDK版本等等 Maven构建Java工程的pom配置文件 p ...
最新文章
- NBT:PICRUSt2预测宏基因组功能
- Lync Server 2010标准版系列PART1:基础构建
- NodeJs初学者经典入门解析
- Facebook利用Home平台加速进军移动领域
- 前端学习(2587):权限控制的分类和意义
- centos7 安装mysql php_Centos7 安装mysql与php
- 定时器驱动数码管c语言程序,74hc595驱动数码管时间程序
- ARM交叉编译工具arm-linux-gcc安装
- 【C语言】逗号运算符的使用举例
- 【推荐实践】RALM:实时Look-alike算法在微信看一看中的应用(附PPT下载链接)...
- 21 , CSS 构造模型
- Javascript的简单介绍,只作为个人笔记,不作为知识参考,如果想要学习,请找其他文章
- php 显示探针_UPUPW PHP探针安全版19.08.06
- 未来大数据的主要应用领域包括哪些
- 针对自动识别大麦网滑块验证码,提出解决方案,并进行分析、总结
- 《大数据: IDEA开发工具配置大全》
- tensorflow实现Word2Vec——生成词向量以及降维可视化
- FLiText: A Faster and Lighter Semi-Supervised Text Classification with Convolution Networks
- 防止进入后含有edittext的界面自动弹出软件盘
- StageFright框架(四)Video Buffer傳輸流程