在 pom.xml 中配置 dependency 标签需明确 gav 坐标,基础写法仅需 groupid、artifactid、version;scope、optional、exclusions 为可选增强项,推荐通过父 pom 管理版本以避免手动维护错误。

在 pom.xml 中配置 `scope、optional、exclusions 属于可选增强项,按需添加。
基础依赖写法(必须项)
最简形式只需三个字段,Maven 会自动从中央仓库拉取对应 jar:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>3.2.0</version> </dependency>
常用可选配置说明
-
scope:指定依赖作用范围,比如
test(仅测试编译/运行时可用)、provided(如 servlet-api,由容器提供,不打包进 war) -
optional:设为
true表示该依赖不传递给引入当前模块的其他项目(避免依赖污染) - exclusions:排除某个传递依赖,防止版本冲突或冗余,例如排除 logback-classic:
<exclusions>
<exclusion>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
</exclusion>
</exclusions>依赖版本怎么填更稳妥?
推荐优先使用 父 POM 管理的版本号(如 Spring Boot 的 spring-boot-dependencies),直接省略 <version></version>,避免手动维护出错:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> <!-- 没写 version,由 spring-boot-starter-parent 统一指定 --> </dependency>
若必须显式写 version,建议用 ${xxx.version} 占位符,在 <properties></properties> 中统一定义,方便集中升级。
检查依赖是否生效
写完保存后,执行以下任一操作触发 Maven 解析:
- IDEA:右键项目 → Maven → Reload project
- 命令行:
mvn clean compile或mvn dependency:tree -Dincludes=xxx查看是否引入成功 - 观察
target/classes/META-INF/maven/下是否有对应依赖的 pom 记录
基本上就这些。不复杂但容易忽略 scope 和版本继承机制,配错常导致类找不到或运行时报冲突。










