Maven
-
Maven是专门用于管理和构建Java项目的工具,他的主要功能有:
-
提供了一套标准化的项目结构
-
提供了一套标准化的构建流程(编译,测试,打包,发布······)
-
提供了一套依赖管理机制
-
-
标准化的项目结构
- 不同IDE之间,项目结构不一样,不通用
- Maven提供了一套标准化的项目结构,所有IDE使用Maven构建的项目结构完全一样,所有IDE创建的Maven项目可以通用
Maven简介
- Apache Maven是一个项目管理的构建工具,它基于项目对象模型(POM)的概念,通过一小段描述信息来管理项目的构建、报告和文档
- 官网:http://maven.apache.org/
- Maven模型
-
仓库分类
-
本地仓库(Local Repository):自己计算机上的一个目录
-
中央仓库(Central Repository):有Maven团队维护的全球唯一的仓库
-
远程仓库(私服)(Remote Repository):一般由公司团队搭建的私有仓库
-
-
当项目中使用坐标引入对应的jar包后,首先会查找本地仓库中是否有对应的jar包
- 如果有,则在项目直接引用
- 如果没有,则去中央仓库中下载对应的jar包到本地
Maven基本使用
-
Maven常用命令
- compile:编译
- clean:清理
- test:测试
- package:打包
- install:安装
-
Maven生命周期
-
Maven构建项目生命周期描述的是一次构建过程经历了多少个事件
-
Maven对项目构建的生命周期划分为三套
- clean:清理工作
- default:核心工作,例如编译,测试,打包,安装等
- site:产生报告,发布站点等
-
IDEA 配置 Maven
- 选择IDEA中 File --> Setting
- 搜索maven
- 设置IDEA使用本地安装的Maven,并修改配置文件路径
Maven坐标详解
-
什么是坐标?
- Maven中的坐标是资源的唯一标识
- 使用坐标来定义项目或引入项目中需要的依赖
-
Maven坐标的主要组成
- groupId:定义当前Maven项目隶属组织名称(通常是域名反写,例如:com.itheime)
- artifactId:定义当前Maven项目名称(通常是模块名称,例如:order-service/goods-service)
- version:定义当前项目版本号
依赖管理
-
使用坐标导入jar包
- 再pom.xml文件中编写标签
- 在标签中使用引入坐标
- 定义坐标的groupId,artifactId,version
- 点击刷新按钮,使坐标生效
-
依赖范围
- 通过设置坐标的依赖范围(scope),可以设置对应jar包的作用范围:编译环境、测试环境、运行环境
- 默认值:compile
通过设置坐标的依赖范围(scope),可以设置对应jar包的作用范围:编译环境、测试环境、运行环境 - 默认值:compile