后端开发Maven
- [1 Maven是什么?](#1 Maven是什么?)
-
- [1.1 Maven基础概念](#1.1 Maven基础概念)
- [1.1.2 仓库](#1.1.2 仓库)
- [1.1.3 坐标](#1.1.3 坐标)
- [2 配置maven环境](#2 配置maven环境)
- [3 创建maven项目](#3 创建maven项目)
- [4 导入maven项目](#4 导入maven项目)
- [4 依赖管理](#4 依赖管理)
-
- [4.1 依赖配置](#4.1 依赖配置)
- [4.2 依赖传递](#4.2 依赖传递)
-
- [4.2.1 排除依赖](#4.2.1 排除依赖)
- [4.3 依赖范围](#4.3 依赖范围)
- [4.4 生命周期](#4.4 生命周期)
-
- [4.4.1 运行生命周期](#4.4.1 运行生命周期)
1 Maven是什么?
Maven本质是项目管理的工具,是用java写出来的,以面向对象的形式设计,它把一个项目看成一个对象,这个对象叫作POM(project object model)
1.依赖管理:不用再手动导入jar包了
2.统一开发结构:提供标准、统一的项目结构
3.项目构建:标准跨平台的自动化项目构建方式
1.1 Maven基础概念
1.1.2 仓库
用于存储资源,包含各种jar包
1.1.3 坐标
用于描述仓库中资源的位置
Maven坐标主要组成
1.groupld:定义当前Maven项目隶属组织名称(通常是域名反写,例如:org.mybatis)
2.artifactld:定义当前Maven项目名称(通常是模块名称,例如CRM、SMS)
3.version:定义当前项目版本号
Maven坐标的作用
使用唯一标识,唯一性定位资源位置,通过该标识可以将资源的识别与下载工作交由机器完成
2 配置maven环境
3 创建maven项目
4 导入maven项目
4 依赖管理
4.1 依赖配置
依赖:指当前项目运行所需要的jar包,一个项目中可以引入多个依赖。
xml
<dependencies>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>
</dependencies>
4.2 依赖传递
按住ctrl 点击maven-projectB
在A项目中依赖了logback和maven-projectB,没有直接依赖C
4.2.1 排除依赖
xml
<!-- 排除依赖-->
<exclusions>
<exclusion>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</exclusion>
</exclusions>
4.3 依赖范围
4.4 生命周期
Maven的生命周期就是为了对所有的maven项目构建过程进行抽象和统一。
生命周期阶段:
clean:移除上一次构建生成的文件
compile:编译项目源代码
test:使用合适的单元测试框架运行测试(junit)
package:将编译后的文件打包,如:jar、war等
install:安装项目到本地仓库