maven依赖查找官网
dependencyManagement
dependency 真正引入依赖,而 dependencyManagement 只是声明依赖版本等信息,并不实际引入。一般使用在父模块中,子模块声明这个依赖的时候,就不需要声明版本信息。
其中的<type>pom</type>和<scope>import</scope>引入的不是代码依赖,而是版本管理信息
<relativePath/>
空标签等价于
不要尝试从相对路径查找父 POM,直接去本地仓库和远程仓库寻找。
这是一种显式声明“父 POM 必须从仓库获取” 的方式,可以避免 Maven 因在相对路径查找而浪费时间和产生误导
文章作者: coder-xuyong
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 coder-xuyong!
相关推荐

2025-09-25
jvm类加载
类加载机制 类是在运行期间动态加载的。 类的加载指的是将类的 .class 文件中的二进制数据读入到内存中,并转为可执行的代码的过程。 类的生命周期 Java 类的完整生命周期包括图片中这几个阶段: 加载、验证、准备、初始化和卸载这 5 个阶段的顺序是确定的,类的加载过程必须按照这种顺序按部就班地开始。而解析过程在某些情况下可以在初始化阶段之后再开始,这是为了支持 Java 的动态绑定。 类加载过程是指加载、验证、准备、解析和初始化这 5 个阶段。 (一)加载加载流程: 通过类的全限定名获取定义此类的二进制字节流 将字节流所代表的静态存储结构转换为方法区的运行时数据结构 在内存中生成一个代表该类的java.lang.Class对象 加载来源: 本地文件系统: .class文件 网络下载: Applet 压缩包: JAR、WAR文件 运行时计算生成: 动态代理 其他文件生成: JSP (二)验证验证是链接阶段的第一步。验证的目标是确保 Class 文件的字节流中包含的信息符合当前虚拟机的要求,并且不会危害虚拟机自身的安全。 验证阶段大致会完成 4 个阶段的检验动作: 文...

2026-09-04
JDK17新特性
概述 JDK 17 是继 JDK 8 之后最重要的 LTS 版本,支持至 2029 年。Spring 6.x / Spring Boot 3.x 最低要求 Java 17。 Records关键字 一个新的关键字,和class、enum一个级别。是不可变数据载体的终极方案,类似于Lombok功能。特别的是声明的时候就带有参数 解决的问题:传统 POJO/DTO/VO 需要编写私有字段、构造器、getter、equals()、hashCode()、toString() 等大量样板代码。 核心用法: 12345678// 一行代码定义一个不可变数据类public record Point(int x, int y) { }// 使用Point p = new Point(10, 20);System.out.println(p.x()); // 10(注意:是 x(),不是 getX())System.out.println(p); // Point[x=10, y=20]System.out.prin...

2025-10-09
Spring IoC 依赖来源
本文介绍 Spring IoC 容器中依赖的主要来源,包括 BeanDefinition、单例对象、 Resolvable Dependency 和外部化配置,并对依赖查找与依赖注入的区别、 注册方式及生命周期管理进行说明。

2026-09-04
Logback日志框架
官方文档https://logback.qos.ch/manual/index.html 三大模块Logback 分为三个模块: 模块 说明 logback-core 其他两个模块的基础,提供核心功能 logback-classic log4j 的改良版本,完整实现了 SLF4J API logback-access 与 Servlet 容器集成,提供 HTTP 访问日志功能 核心架构Logback 建立在三个主要类之上:Logger、Appender 和 Layout。 123456789101112131415161718192021222324┌─────────────────────────────────────────────────────┐│ 应用程序 ││ (使用 SLF4J API 记录日志) │└─────────────────────┬─────────────────────────────...

2024-02-17
Tomcat 快速入门
Tomcat 快速入门 🎁 版本说明 当前最新版本:Tomcat 8.5.24 环境要求:JDK7+ 1. Tomcat 简介1.1. Tomcat 是什么Tomcat 是由 Apache 开发的一个 Servlet 容器,实现了对 Servlet 和 JSP 的支持,并提供了作为 Web 服务器的一些特有功能,如 Tomcat 管理和控制平台、安全域管理和 Tomcat 阀等。 由于 Tomcat 本身也内含了一个 HTTP 服务器,它也可以被视作一个单独的 Web 服务器。但是,不能将 Tomcat 和 Apache HTTP 服务器混淆,Apache HTTP 服务器是一个用 C 语言实现的 HTTP Web 服务器;这两个 HTTP web server 不是捆绑在一起的。Tomcat 包含了一个配置管理工具,也可以通过编辑 XML 格式的配置文件来进行配置。 1.2. Tomcat 重要目录 /bin - Tomcat 脚本存放目录(如启动、关闭脚本)。 *.sh 文件用于 Unix 系统; *.bat 文件用于 Windows 系统。 /con...

2025-10-02
Spring 依赖注入
Spring 依赖注入DI,是 Dependency Injection 的缩写,即依赖注入。依赖注入是 IoC 的最常见形式。依赖注入是手动或自动绑定的方式,无需依赖特定的容器或 API。 依赖注入 (Dependency Injection,简称 DI) 是一个过程,其中对象仅通过构造函数参数、工厂方法的参数或对象实例在构造或从工厂方法返回。然后容器在创建 bean 时注入这些依赖项。这个过程基本上是 bean 本身的逆过程(因此得名,控制反转),它通过使用类的直接构造或服务定位器模式自行控制其依赖项的实例化或位置。 使用 DI,代码更干净,当对象具有依赖关系时,解耦更有效。对象不查找其依赖项,也不知道依赖项的位置或类别。结果,您的类变得更容易测试,特别是当依赖关系在接口或抽象基类上时,它们允许在单元测试中使用存根或模拟实现。 容器全权负责组件的装配,它会把符合依赖关系的对象通过 JavaBean 属性或者构造函数传递给需要的对象。 DI 是组件之间依赖关系由容器在运行期决定,形象的说,即由容器动态的将某个依赖关系注入到组件之中。依赖注入的目的并非为软件系统带来更多功能,而是...
评论
