一文带你初识 Maven,深入浅出的理解 POM 文件

💖Maven 简介
1、软件开发中的阶段
需要分析:分析项目具体完成的功能,有什么要求,具体怎么实现。设计阶段:根据分析的结果,设计项目的使用什么技术,解决难点。开发阶段:编码实现功能,编译代码,自我测试。测试阶段:专业的测试人员,测整个项目的功能十分符合设计要求。出一个测试告。项目的打包,发布阶段:给用户安装项目。
2、Maven 能做什么
1)项目的自动构建,帮助开发人员做项目代码的编译,测试,打包,安装,部署等工作。2)管理依赖(管理项目中使用的各种 jar 包)。依赖:项目中需要使用的其他资源,常见的是 jar 比如项目要使用 mysgl 驱动,我们就说项目依赖 mysgl 驱动。
3、没有使用 maven 怎么管理依赖</font><font color="green">管理 jar,需要从网络中单独下载某个 jar,需要选择正确版本,手工处理 jar 文件之间的依赖。a.jar 里面要使用 b.jar 的类。
4、什么是 maven
maven 是 apache 基金会的开源项目,使用 java 语法开发。Maven 这个单词的本意是:专家,内行。读音是['meIv(e)n]或['mevn]。maven 是项目的自动化构建工具,管理项目的依赖。
✨约定目录结构
maven 项目使用的大多人遵循的目录结构,叫做约定目录结构。一个 maven 项目是一个文件夹。比如项目叫做 Hello

✨maven 的使用方式
①maven 可以独立使用:创建项目,编译代码,测试程序,打包,部署等等。② maven 和 idea 一起使用:通过 idea 借助 maven,实现编码,测试,打包等等。
💖POM 文件
POM:Project Object Model 项目对象模型,maven 把项目当做模型处理。操作这个模型就是操作项目。maven 通过 pom.xml 文件实现项目的构建和依赖的管理。
pom 文件:即 Project Object Model 项目对象模型。 Maven 把一个项目的结构和内 容抽象成一个模型,在 xml 文件中进行声明,以方便进行构建和描述,pom.xml 是 Maven 的灵魂。所以,maven 环境搭建好之后,所有的学习和操作都是关于 pom.xml 的。
那么我们来看一下 pom.xml 文件是什么样的
✨坐标的概念
坐标组成是 groupid,artifiactld,version。坐标概念来自数学。
坐标作用:确定资源的,是资源的唯一标识。在 maven 中,每个资源都有坐标。坐标值是唯一的。简称叫 gav。
拿 servlet 依赖举例
groupid:组织名称,代码。公司,团体或者单位的标识。这个值常使用的公司域名的倒写。例如:学校的网站 www.sanlian.com,groupId:com.sanlian 如果项目规模比较大,也可以是域名倒写+大项目名称。例如:www.baidu.com , 无人车:com.baidu.appollo
artifactid:项目名称,如果 groupId 中有项目,此时当前的值就是子项目名。项目名称是唯一的。
version:版本,项目的版本号,使用的数字。三位组成。例如主版本号,次版本号小版本号,例如:5.2.5。注意:版本号中有-SNAPSHOT,表示快照,不是稳定的版本。
项目使用 gav:1.每个 maven 项目,都需要有一个自己的 gav。2.管理依赖,需要使用其他的 jar,也需要使用 gav 作为标识。
✨依赖 dependency
依赖:项目中要使用的其他资源(jar)。需要使用 maven 表示依赖,管理依赖。通过使用 dependency 和 gav 一起完成依赖的使用。
注意:需要在 pom.xml 文件中,使用 dependencies 和 dependency,还有 gav 完成依赖的说明。
使用依赖的格式:这里拿 junit 依赖举例,<groupId>标签中的指的是项目的公司,<artifactId>标签中指的是项目名称,<version>标签中指的是项目的版本。
注意:<dependencies>标签要放到<properties>标签的下面
✨打包类型
<packaging>标签:项目打包的类型,有 jar,war,ear,pom 等等,默认是 jar。
注意:<packaging>标签的放置位置是这个项目的坐标下面
例如:
版权声明: 本文为 InfoQ 作者【几分醉意.】的原创文章。
原文链接:【http://xie.infoq.cn/article/30d542687c4483f305461ac05】。文章转载请联系作者。
评论