Java中Maven的依赖管理

依赖介绍

是指当前项目运行所需要的jar包,一个项目中可以引入多个依赖

配置

  1. 在pom.xml中编写<dependencies>标签

  2. 在<dependencies>中使用<dependency>引入标签

  3. 定义坐标的groupId、rtifactId、version

  4. 点击刷新按钮、引入新坐标

例如引入下面的坐标

复制代码
  <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就可以查看

依赖范围

  1. 主程序范围有效(main文件夹范围)

  2. 测试程序范围有效(test文件夹范围)

  3. 是否参入打包程序(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有三套独立的生命周期

  1. clean:清理工作

  2. default:核心工作,如:编译、测试、打包、安装、部署等()

  3. site:生成报告、发布站点

每一套生命周期的包含一些阶段(phase),阶段是有顺序的,后面的阶段依赖前面的阶段

clean(清理)->complie(编译)->test(测试)->package(打包)->install(安装)

在同一套生命周期中,当运行后面的阶段,前面的阶段也会运行

maven生命周期执行的两种方式

  1. 在idea中,右侧的工具栏,选中对应的生命周期,双击执行

  2. 在命令提示符里面执行

相关推荐
JAVA面经实录9175 小时前
Java企业级工程化·终极完整版背诵手册(无遗漏、全覆盖、面试+落地通用)
java·开发语言·面试
许彰午7 小时前
CacheSQL(二):主从复制——OpLog 环形缓冲区与故障自动恢复
java·数据库·缓存
Bat U8 小时前
JavaEE|多线程初阶(七)
java·开发语言
掌心向暖RPA自动化11 小时前
如何获取网页某个元素在屏幕可见部分的中心坐标影刀RPA懒加载坐标定位技巧
java·javascript·自动化·rpa·影刀rpa
日取其半万世不竭11 小时前
Minecraft Java版社区服务器搭建教程(Linux,适合新手)
java·linux·服务器
TeamDev12 小时前
JxBrowser 9.0.0 版本发布啦!
java·前端·混合应用·jxbrowser·浏览器控件·跨平台渲染·原声输入
AI人工智能+电脑小能手12 小时前
【大白话说Java面试题】【Java基础篇】第24题:Java面向对象有哪些特征
java·开发语言·后端·面试
AI人工智能+电脑小能手13 小时前
【大白话说Java面试题】【Java基础篇】第25题:JDK1.8的新特性有哪些
java·开发语言·后端·面试
likerhood13 小时前
SLF4J: Failed to load class “StaticLoggerBinder“ 解决
java·log4j·maven
早日退休!!!13 小时前
大模型推理瓶颈七层分析模型
java·服务器·数据库