SpringBoot 3.1.5如何加载外部目录下所有.properties配置文件?
解决SpringBoot 3.1.5加载外部目录所有.properties文件的问题
你当前的启动命令只加载application.properties是因为spring.config.location指定目录时,Spring Boot仅会识别默认命名规则的配置文件(如application*.properties),不会自动加载其他命名的配置文件。以下两种方法可以无需手动罗列,自动加载目标目录下所有.properties文件:
方法一:启动命令中使用通配符 + 追加配置位置
使用spring.config.additional-location(而非spring.config.location)配合通配符,该参数会在默认配置基础上追加外部配置,不会覆盖原有逻辑:
java -jar your-app.jar --spring.config.additional-location=file:path/to/directory/*.properties
- 若需要递归加载子目录下的所有
.properties,可改用file:path/to/directory/**/*.properties - 这个方式适合在启动时灵活指定外部配置目录
方法二:在已加载的配置文件中导入所有外部配置
如果你希望固定导入某个目录的配置,可在application.properties(Jar包内或外部的都可以)中添加以下配置:
spring.config.import=file:path/to/directory/*.properties
- 路径如果用相对路径,会以应用启动时的工作目录为基准
- 同样,递归子目录可替换为
file:path/to/directory/**/*.properties
内容的提问来源于stack exchange,提问作者user497087
相关产品推荐
相关产品推荐

