## 1.maven基础知识回顾
### 1.1 maven介绍
maven 是一个项目管理工具,主要作用是在项目开发阶段对Java项目进行依赖管理和项目构建。
依赖管理:就是对jar包的管理。通过导入maven坐标,就相当于将仓库中的jar包导入了当前项目中。
项目构建:通过maven的一个命令就可以完成项目从清理、编译、测试、报告、打包,部署整个过程。
### 1.2 maven的仓库类型
1.本地仓库
2.远程仓库
①maven*仓库(地址:http://repo2.maven.org/maven2/)
②maven私服(公司局域网内的仓库,需要自己搭建)
③其他公共远程仓库(例如apache提供的远程仓库,地址:http://repo.maven.apache.org/maven2/)
### 1.3 maven常用命令
clean:清理
compile:编译
test:测试
package:打包
install:安装
### 1.4 maven坐标书写规范
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.6</version>
</dependency>
### 1.5 maven的依赖范围
| 依赖范围 | 对于编译classpath有效 | 对于测试classpath有效 | 对于运行时classpath有效 | 例子
| -------- | --------------------- | --------------------- | ----------------------- | ---------------------------
| compile | Y | Y | Y | spring-core
| test | - | Y | - | Junit
| provided | Y | Y | - | servlet-api
| runtime | - | Y | Y | JDBC驱动
| system | Y | Y | - | 本地的,maven仓库之外的类库