目录
- Maven 简介
- 仓库的分类
- Maven 坐标
- Maven 常用命令
- Maven 生命周期
- 依赖管理
- 删除Maven 项目
- 导入项目
- 最后
Maven 简介
Maven的作用:
Maven是专门用于管理和构建Java项目的工具
它的主要功能有:
提供了一套标准化的项目结构
提供了一套标准化的构建流程(编译,测试,打包,发布……)
提供了一套依赖管理机制
仓库的分类
仓库分为三类
本地仓库
远程仓库
中央仓库
jar包的查找顺序则变为:
本地仓库 -> 远程仓库 ->中央仓库
Maven 坐标
Maven 中的坐标是资源的唯一标识
使用坐标来定义项目或引入项目中需要的依赖
Maven 坐标主要组成
groupId:定义当前Maven项目隶属组织名称(通常是域名反写,例如:com.itheima)
artifactId:定义当前Maven项目名称(通常是模块名称,例如 order-service、goods-service)
version:定义当前项目版本号
简称:GAV
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.27</version>
</dependency>
Maven 常用命令
compile :编译(生成target)
clean:清理(清理掉编译生成的target)
test:测试(执行测试代码)
package:打包(将maven打包成jar包)
install:安装 (将jar发布到仓库中)
测试中的注意事项
不注意规范会报错
public class TestMaven {
@Test
public void test1(){
//1.文件类名一定要是Test开头
//2.方法名也要有test
//打印不要有中文,一般自动化测试也用不到打印,一般使用断言来判断是否达到预期
System.out.println("Hello Maven");
}
}
Maven 生命周期
Maven 对项目构建的生命周期划分为3套
clean:清理工作
default:核心工作,例如编译,测试,打包,安装等
site:产生报告,发布站点等
同一生命周期内,执行后边的命令,前边的所有命令会自动执行
例如说,我执行test,就会把前面的compile先执行
依赖管理
通过设置坐标的依赖范围(scope),可以设置对应jar包的作用范围。
compile : 默认值,在编译,运行,测试中都可生效
test : 只在测试类中有效,在编译和运行中无效
provided : 编译和测试有效,在运行时无效,也就是说编译可通过,运行出错。
runtime: 在测试和运行中有效,在编译中无效,常用作不需要编译的部分,例如jdbc驱动,我们jdbc代码全是java自带的,编译可通过,必须引入驱动,否则报错。
删除Maven 项目
不要直接右键delete,这样引入的依赖还没删除,先删掉依赖,再删除maven
可以直接在idea右侧maven中删除
选中要删除的maven,右键,然后点击图中红框
导入项目
直接导入pom.xml文件即可。
最后
如果你对本文有疑问,你可以在文章下方对我留言,敬请指正,对于每个留言我都会认真查看。