You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot应用是否读取其他Jar包配置?冲突时优先级如何?

Spring Boot读取依赖Jar包配置的规则

Spring Boot会读取其他Jar包中的application配置文件(比如application.properties、application.yml这类符合命名规则的配置)。因为Spring Boot的配置加载机制会扫描整个classpath下的相关配置文件,而你引入的依赖Jar包默认会被加入项目的classpath中,所以这些Jar里的配置会被自动加载并合并到应用的配置体系中。

当多个配置源存在同一属性的不同值时,优先级规则从高到低如下:

  • 项目自身的Profile特定配置(例如application-dev.properties)
  • 项目自身的通用配置(例如application.properties)
  • 依赖Jar包中的Profile特定配置(例如依赖Jar内的application-dev.properties)
  • 依赖Jar包中的通用配置(例如依赖Jar内的application.properties)

另外,当多个依赖Jar包属于同一优先级层级(比如都是通用配置)时,它们的配置优先级由classpath加载顺序决定:后被加载的Jar包中的配置会覆盖先被加载的。而classpath的顺序由构建工具的依赖解析规则控制:

  • Maven中,直接依赖的Jar优先级高于传递依赖;同层级直接依赖里,声明顺序靠后的Jar会在classpath中更靠后加载,因此配置优先级更高。
  • Gradle的规则类似,依赖声明顺序靠后的Jar,其配置会覆盖前面的。

内容的提问来源于stack exchange,提问作者Harsha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 17:52:09