Maven的核心概念
2.1、约定的目录结构
maven项目使用的是大多数人遵循的目录结构,叫做约定的目录结构。
一个maven项目是一个文件夹。比如项目叫做Hello
Hello 项目文件夹
\src\
\main 叫做主程序目录(完成项目功能的代码和配置文件)
\java 源代码(包和相关的类定义)
\resource 配置文件
\test 测试程序代码(开发人员自己写的测试代码)
\java 测试代码(junit)
\resource 测试程序需要的配置文件
\pom.xml maven的配置文件,核心文件
maven的使用方式:
-
maven可以独立使用:创建项目,编译代码,测试程序,打包,部署等待。
-
maven和idea一起使用,通过idea借助maven,实现编码,测试,打包等待。
2.2、pom文件
POM:Project Object Model 项目对象模型,maven把项目当做模型处理。操作这个模型就是操作项目。
maven通过pom.xml文件实现,项目的构建和依赖的管理。
<?xml version="1.0" encoding="UTF-8"?>
<!-- project是根标签,后面的是约束文件 -->
<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/xsd/maven-4.0.0.xsd">
<!--pom模型的版本,就是4.0.0-->
<modelVersion>4.0.0</modelVersion>
<!--坐标-->
<groupId>org.example</groupId>
<artifactId>Spring-mvc</artifactId>
<packaging>pom</packaging>
<version>1.0-SNAPSHOT</version>
<modules>
<module>springmvc-01</module>
<module>springmvc-02</module>
</modules>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
</properties>
</project>
2.3、坐标
坐标的组成是groupid、artifiactld、version。坐标概念来自数学。
坐标的作用:确定资源的,是资源的唯一标识。在maven中,每个资源都是坐标,坐标值是唯一的。简称gav
<groupId>org.example</groupId>
<artifactId>Spring-mvc</artifactId>
<version>1.0-SNAPSHOT</version>
groupId:组织名称,代码,公司或单位的标识。这个值使用的公司域名的倒写。
artifactId:项目名称,如果groupId中有项目,此时当前的值就是子项目。项目名称是唯一的
verson:版本,项目的版本号,使用的数字,三位组成。例如 主版本号.次版本号.小版本号
注意:版本号中有-SNAPSHOT,表示快照,不是稳定的版本。
项目中使用gav:
- 每个maven项目,都需要有一个自己的gav
- 管理依赖,需要使用其他的jar,也需要使用gav标识。