Maven_概述及配置
一、什么是 Maven?
Maven 是 Apache 软件基金会组织维护的一款专门为 Java 项目提供构建和依赖管理支持的工具。
1、构建
Java 项目开发过程中,构建指的是使用『原材料生产产品』的过程。
原材料
- Java 源代码
- JSP 文件
- 图片
- 配置文件
- ……
产品
- 一个可以在服务器上运行的项目
构建过程包含的主要的环节:
- 清理:删除上一次构建的结果,为下一次构建做好准备
- 编译:Java 源程序编译成*.class 字节码文件
- 测试:运行提前准备好的测试程序
- 报告:针对刚才测试的结果生成一个全面的信息
- 打包
- Java 工程:jar 包
- Web 工程:war 包
- 安装:把一个 Maven 工程安装到 Maven 仓库
- 部署:将准备好的 jar 包或 war 包部署到服务器上运行
2、依赖
如果 A 工程里面用到了 B 工程的类、接口、配置文件等等这样的资源,那么我们就可以说 A 依赖 B。例如:
- commons-fileupload 包依赖 commons-io 包
- spring-core 包 依赖 commons-logging 包
依赖管理中要解决的具体问题:
- jar 包的下载:使用 Maven 之后,jar 包会从规范的远程仓库下载到本地
- jar 包之间的依赖:通过依赖的传递性自动完成
- jar 包之间的冲突:通过对依赖的配置进行调整,让某些 jar 包不会被导入
3、Maven 的工作机制
二、Maven 核心程序解压
到Maven 官网下载核心程序压缩包 apache-maven-3.8.1-bin
解压到非中文、没有空格的目录。
在解压目录中,我们需要着重关注 Maven 的核心配置文件:conf/settings.xml
三、核心配置文件
1、指定本地仓库
本地仓库默认值:用户的家目录/.m2/repository。
这是 Maven 的核心配置文件:conf/settings.xml 中的内容
1 | <!-- localRepository |
建议将 Maven 的本地仓库放在其他盘符下。配置方式如下:
1 | <!-- localRepository |
本地仓库这个目录,我们手动创建一个空的目录即可。
注意:本地仓库本身也需要使用一个非中文、没有空格的目录。
2、配置阿里云提供的镜像仓库
Maven 下载 jar 包默认访问境外的中央仓库,速度很慢。改成阿里云提供的镜像仓库,访问国内网站,可以让 Maven 下载 jar 包的时候速度更快。
配置的方式是:在 conf/settings.xml 中找到<mirrors>标签,将下面mirror 标签整体复制过去。
1 | <mirrors> |
3、配置 Maven 工程的基础 JDK 版本
如果按照默认配置运行,Java 工程使用的 JDK 版本是 1.5。
修改配置的方式是:将profile 标签整个复制到 profiles 标签内。
1 | <profiles> |
4、macOS 下的配置
四、配置环境变量
1、检查 JAVA_HOME 配置是否正确
Maven 是一个用 Java 语言开发的程序,它必须基于 JDK 来运行,需要通过 JAVA_HOME 来找到 JDK 的安装位置。
可以使用下面的命令验证:
1 | echo %JAVA_HOME% |
1 | C:\Users\ShiGuang>echo %JAVA_HOME% |
2、配置 MAVEN_HOME
配置环境变量的规律:
XXX_HOME 指向的是 bin 目录的上一级
PATH 指向的是 bin 目录
3、配置 PATH
在 path 变量下新增加
1 | %MAVEN_HOME%\bin |
4、验证
打开 cmd 输入
1 | mvn -v |
1 | C:\Users\ShiGuang>mvn -v |