依赖介绍
是指当前项目运行所需要的jar包,一个项目中可以引入多个依赖
配置
- 在pom.xml中编写<dependencies>标签
- 在<dependencies>中使用<dependency>引入标签
- 定义坐标的groupId、rtifactId、version
- 点击刷新按钮、引入新坐标
例如引入下面的坐标
<dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.2.3</version> </dependency>
刷新以后我们发现maven里面的dependencies有变化
注意 如果我们引入的依赖在本地仓库中没有,就会去远程仓库或者中央仓库下载
如果不知道依赖的坐标信息看可以去 https://mvnrepository.com 中搜索
maven中的依赖传递
依赖的分类
直接依赖:在当前项目中通过依赖配置建立的依赖关系
简介依赖:被依赖的资源如果依赖其他资源,当前项目间接依赖其他资源
可以使用junit排除依赖
<exclusions> <exclusion> <groupId>junit</groupId> <artifactId>junit</artifactId> </exclusion> </exclusions>
如何查看依赖
鼠标右键Diagrams然后再选择Show dependencies就可以查看
依赖范围
- 主程序范围有效(main文件夹范围)
- 测试程序范围有效(test文件夹范围)
- 是否参入打包程序(package文件夹范围内)
在默认情况下,可以在任何地方使用可以通过<scope></scope>设置范围
SCOPE范围 | 主程序 | 测试程序 | 打包(运行) | 范例 |
---|---|---|---|---|
complie | Y | Y | Y | logi4 |
test | - | Y | - | junit |
provided | Y | Y | - | servlet-api |
runtime | - | Y | Y | jdbc驱动 |
maven的生命周期
maven的生命周期是为了对所有的maven项目构建进行抽象和统一
Maven有三套独立的生命周期
- clean:清理工作
- default:核心工作,如:编译、测试、打包、安装、部署等()
- site:生成报告、发布站点
每一套生命周期的包含一些阶段(phase),阶段是有顺序的,后面的阶段依赖前面的阶段
clean(清理)->complie(编译)->test(测试)->package(打包)->install(安装)
在同一套生命周期中,当运行后面的阶段,前面的阶段也会运行
maven生命周期执行的两种方式
- 在idea中,右侧的工具栏,选中对应的生命周期,双击执行
- 在命令提示符里面执行