① Maven 解析依赖信息时,首先会到本地仓库中查找依赖的 Jar 包
-
对于本地仓库中没有的依赖,就会去中央仓库查找,通过 Maven 坐标来获取 jar 包,获取到后会先下载到本地仓库
-
对于中央仓库中不存在的依赖包,就会显示编译失败
② 如果依赖的是自己或者团队开发的 Maven 工程,需要先使用 install 命令把被依赖的 maven 工程的 jar 包安装到本地仓库中
③ 依赖范围,scope 配置就是依赖的范围
1. compile:默认值,适用于所有阶段(开发、测试、部署、运行),本 jar 会一直存在所有的阶段
2. provided:只在开发、测试阶段使用,目的是不让 Servlet 容器和本地仓库的 jar 包冲突,如 servlet.jar
3. runtime:只在运行时使用,如 JDBC 驱动,适用于运行和测试阶段
4. test:只在测试时使用,用于编译和运行测试代码,不会随项目发布
5. system:类似 provided,需要显式提供包含依赖的 jar,Maven 不会在 Repository 中进行查找
网友评论