作用
自动化构建工具
使用
安装核心程序
- 检查电脑的Java环境变量
echo %JAVA_HOME%
- 环境变量配置
JAVA_HOME = G:\Java\jdk1.8
CLASSPATH = ,;G:\Java\jdk1.8\lib\dt.jar;G:\Java\jdk1.8\lib\tools.jar
Path新增 %JAVA_HOME%\bin
安装maven
官网下载apache-maven-3.6.3 解压放到一个地方不用动,相当于安装好
配置maven环境变量
// 新建
M2_HOME = G:\Java\apache-maven-3.6.3
// 修改
Path + %M2_HOME%\bin
测试maven
cmd命令行:mvn -v
成功出现
mvn -v
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: G:\Java\apache-maven-3.6.3\bin\..
Java version: 1.8.0_181, vendor: Oracle Corporation, runtime: G:\Java\jdk1.8\jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
本地仓库(联网)
- maven默认的本地仓库:~(当前用户).m2\repository
- maven的核心配置文件位置:
*\apache-maven-3.6.3\conf\settings.xml
修改
配置阿里云镜像
*\apache-maven-3.6.3\conf\settings.xml
中
在IDEA中配置
关闭项目后右下角configure–>settings
第一个maven
maven常用操作
- clean:清理,将之前的编译结果清理掉
- compile:编译,将主程序的.java代码编译成.class文件
- test:编译测试 程序并运行,将测试程序的.java代码,编译成.class文件,再执行测试程序,最终生成测试报告
- package:打包,将程序打成jar或者是war包
- install :安装,将打包好的jar包安装到本地
坐标
依赖
依赖范围
compile
(默认) main和test下的java都可以访问,部署到Tomcat上要放在WEB-INF的lib目录下test
test下的java可以访问,部署到Tomcat上不会放在WEB-INF的lib目录下provided
main和test下的java都可以访问,部署到Tomcat上不需要放在WEB-INF的lib目录下(Tomcat可以提供的jar)
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope> // 依赖范围 不写默认是compile
</dependency>
</dependencies>
当jar导入Tomcat时,须把main依赖的jar一并导入到WEB-INF的lib目录
依赖的传递性
依赖排除
<dependency>
<groupId>cn.zcx.maven</groupId>
<artifactId>Test1</artifactId>
<version>1.0-SNAPSHOT</version>
<exclusions>
<exclusion>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</exclusion>
</exclusions>
</dependency>
统一管理jar版本
方法:定义变量,版本号=变量,进行统一管理
在<dependencies></dependencies>外面
<properties>
<变量名>版本号</变量名>
</properties>
// 引用
<version>${变量名}</version>