Maven
- Apache Maven是一个项目管理和构建工具,基于项目对象模型的概念,通过一小段描述信息来管理项目的构建、报告和文档
- 官网:https://maven.apache.org/
- Maven是专门用于管理和构建Java项目的工具,它的主要功能有:
- 提供了一套标准化的项目结构
- 提供了一套标准化的构建流程(编译,测试,打包,发布…)
- 提供了一套依赖管理机制(管理项目所依赖的第三方资源)
- 标准化的项目结构
- 所有IDE使用Maven构建的项目结构完全一致,所有IDE创建的Maven项目可以通用
Maven仓库(本地仓库、中央仓库、远程仓库)
- 本地仓库:自己计算机上的一个目录
- 中央仓库:由Maven团队维护的全球唯一仓库
- 地址:https://repo1.maven.org/maven2/
- 远程仓库(私服):一般由公司团队搭建的私有仓库
需要一个Jar包时,会先从本地仓库查找,如果没找到,会从中央仓库去下载
如果搭建了远程仓库,本地仓库没找到会先去远程仓库,最后去中央仓库
Maven安装和配置
-
下载地址:https://maven.apache.org/download.cgi 直接下载ZIP格式解压到本地即可
-
配置环境变量 MAVEN_HOME为安装路径的bin目录
-
配置本地仓库:修改conf/settings.xml中 localRepository为一个指定目录
-
配置阿里云私服:修改conf/settings.xml中mirrors标签,为其添加如下子标签
-
<!--阿里云镜像1--> <mirror> <id>aliyunId</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>https://maven.aliyun.com/repository/central</url> </mirror> <!--阿里云镜像2--> <mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>https://maven.aliyun.com/nexus/content/groups/public/</url> </mirror> <!--阿里云镜像3--> <mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>https://maven.aliyun.com/nexus/content/repositories/central/</url> </mirror> <!--阿里云镜像4--> <mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>https://central.maven.org/maven2</url> </mirror> <!--maven官方镜像--> <mirror> <id>mirrorId</id> <mirrorOf>central</mirrorOf> <name>Human Readable Name</name> <url>https://repol.maven.org/maven2/</url> </mirror>
-
Maven的基本使用
Maven常用命令
- compile :编译
- clean:清理
- test:测试
- package:打包
- install:安装 (将当前Jar包放到本地仓库中)
Maven的生命周期
-
Maven构建项目生命周期描述的是一次构建过程经历了多少事件
-
Maven对构建的生命周期划分为3套
- clean:清理工作
- default:核心工作,例如编译、测试、打包、安装等
- site:产生报告、发布站点等
同一生命周期内,执行后边的命令,前面的命令会自动执行
pre-clean -> clean -> post-clean
complie -> test -> package -> install
pre-site -> site -> post-site
IDEA配置Maven
- IDEA配置Maven环境
- 1.选择IDEA中 File -> Settings
- 2.搜索Maven
- 3.设置IDEA使用本地安装的Maven,并修改配置文件路径
- Maven坐标详解
- Maven中坐标是资源唯一标识
- 使用坐标来定义项目或引入项目中所需要的依赖
- groupId:定义当前Maven项目隶属组织名称(通常是域名反写,例如com.alibaba)
- artifactId:定义当前Maven项目名称(通常是模块名称,例如mysql-connector-java)
- version:定义当前项目的版本号
- 导入Maven文件
- IDEA右侧有一个Maven,然后选择 + 号,在目录中双击项目的pom.xml文件即可导入
- 如果右侧没有Maven,点击 View -> Appearance -> Tool WIndow Bars
- Maven插件
- Maven Helper
依赖管理
- 使用坐标导入Jar包
- 修改依赖时自动生效配置 -> File -> Settings -> Build,Execution,Deployment -> Build Tools -> Any Changes
- alt + insert 选择dependency,可以直接搜索Jar包
依赖范围
- 通过设置坐标的以来范围(scope),可以设置对应Jar包的作用范围:编译环境、测试环境、运行环境
- 默认值:compile