Maven精选系列--POM文件解析
转载自 Maven精选系列--POM文件解析
之前有介绍到maven的标准目录结构,也看到了maven的核心配置文件pom.xml文件,今天就解析这个配置文件。
maven工程的核心文件就是这个pom文件了,每个工程在创建的时候都会有一个pom.xml配置文件,这个文件就是maven配置依赖、插件,管理项目及构建的入口,所有的配置都会在这个文件里面,所以搞懂这个文件的基本配置是非常必要的。
如下图,列表了POM文件一系列配置项。
下面这些配置是POM文件基本不可缺少的配置项。
下在讲讲最基本用到的配置项吧。
modelVersion
maven的模型版本,跟随maven定义,一般不能修改。
groupId
项目的组织,一般是顶级域名名称+公司或者组织名称,如alibaba的项目组织为com.alibaba,如果你们公司的域名为www.abc.com,那你们的项目组织最好就以com.abc命名。
artifactId
项目的名称,也是项目之间引进依赖的重要标识。像alibaba有个dubbo项目,dubbo项目可能又关联了许多子项目,所以artifactId就会定义有dubbo、dubbo-config这样的工程。
version
项目的版本,项目迭代开发,可能经历许多个版本,靠这个定义,默认是打包的组成部分,如dubbo-2.8.4.jar。另外,版本有两个概念,0.0.1-SNAPSHOT这样的是快照版本,0.0.1-RELEASE或者不带SNAPSHOT的就是RELEASE版本。
packaging
打包类型,有这几种类型:pom, jar, maven-plugin, ejb, war, ear, rar, par,默认不填就是jar包,一般常用的是pom、jar、war。
properties
配置公共属性,如spring-web,spring-aop你要依赖这两个,它们肯定是同一个版本的如4.5.0,可以把版本号放在属性上统一管理,也方便维护。
介绍了最基本的配置项,其他配置后续会一一分解。想了解更加详细的配置说明可以翻阅官方的文档:http://maven.apache.org/pom.html
Maven精选系列--POM文件解析相关推荐
- Maven精选系列--标准目录结构
转载自 Maven精选系列--标准目录结构 Maven的目录结构和传统的项目有所差别,下面是一个jar包通常有的目录结构. src/main/java:源代码目录 src/main/resources ...
- Maven精选系列--classifier元素妙用
转载自 Maven精选系列--classifier元素妙用 先来看这么一个依赖 <dependency><groupId>net.sf.json-lib</groupId ...
- Maven精选系列--常用命令详情
转载自 Maven精选系列--常用命令详情 常用命令 mvn –version mvn -v 显示maven安装版本信息 mvn clean 清理项目打包文件,即项目下的target目录 mvn co ...
- Maven精选系列--过滤不同环境配置文件
转载自 Maven精选系列--过滤不同环境配置文件 背景介绍 项目有开发.测试.生产至少有这三个环境,所需要的配置信息肯定不一样,所以打包的时候可以指定使用哪一个配置文件. 如测试环境使用:mvn p ...
- Maven精选系列--私库搭建及使用
转载自 Maven精选系列--私库搭建及使用 为什么要使用私库 maven默认去远程中央仓库下载JAR包的,访问国外网络相当慢,如果团队每个人都去下载一遍无疑是网络的浪费,当然也可以添加国内的镜像,如 ...
- Maven精选系列--继承与聚合
转载自 Maven精选系列--继承与聚合 继承 什么是继承,我们可以定义项目的父类项目,用于继承父项目的依赖.插件.属性等信息. <parent> <groupId>com.a ...
- Maven精选系列--依赖范围、传递、排除
转载自 Maven精选系列--依赖范围.传递.排除 添加依赖 下面我添加了一个spring-web的依赖,maven就会去下载spring-web的jar包及它依赖的一些jar包. <depen ...
- Maven精选系列--发布jar包到Nexus私库
转载自 Maven精选系列--发布jar包到Nexus私库 Nexus2可以通过管理界面来上传jar包到私库中,而最新的Nexus3却找不到了上传界面,只能通过以下方式来发布到私库. 发布第三方jar ...
- Maven精选系列--介绍与安装
转载自 Maven精选系列--介绍与安装 Maven介绍 Maven是一个项目管理工具,用来管理项目的生命周期,如项目中各个项目之间的依赖管理,项目中使用到的jar包依赖管理,还有许多项目构建的插件等 ...
最新文章
- python画出心形图-python画出心形图
- STM32的同步规则模式使用
- python excel 数据匹配实现vlookup功能_如何用python实现excel中的vlookup功能?
- mysql5.5 function_mysql 5中的store function
- ffmpeg 安装教程
- mybatis学习第一次使用
- 室内声场计算机模拟的声线跟踪法和虚声源法,计算机声场模拟软件ODEON及其应用lowbar;彭庆 - 范文中心...
- c语言pow函数原型_c语言中pow函数的用法是什么?_后端开发
- 多目标优化--MOEAD算法笔记
- 每日一佳——Computational Rationalization: The Inverse Equilibrium Problem(Kevin Waugh et al. ,ICML ,2011)
- Python学习摘录(自用)
- 全球最大 IPO,我们能否赚笔养老钱?
- 如何创建一个自己的npm包,并且上传到npm官网上
- GifCam2.0使用
- Words for Windows
- MTK4G安卓核心板_XY6739CW(MTK6739平台)详细参数性能
- 普通高中计算机装备标准,普通高中教育技术装备标准Ⅰ.doc
- 三维计算机辅助设计教程,三维计算机辅助设计教程-Pro ENGINEER.pdf
- 图网络算法——概率图介绍与贝叶斯网络
- 【同花顺公式编辑教程】第1章 编辑器环境
热门文章
- [蓝桥杯]带分数-dfs
- http.ListenAndServe()到底做了什么?
- 噪声与振动控制工程手册_声学分享客噪声与振动控制篇大型隔振工程案例介绍...
- java计算字符串中字符出现的次数_java – 计算字符串中字符出现次数
- ubuntu 通过 海康sdk调用摄像头抓图片
- ubuntu分解压缩包
- P4897 【模板】最小割树(Gomory-Hu Tree)(网络流/最小割/树形结构)
- [BZOJ2616] SPOJ PERIODNI
- 【每日一题】8月14日题目精讲 [SCOI2010]游戏
- 技术情报局(笛卡尔树)