我需要从将部署在 tomcat 中的 spring boot war 外部加载 application.properties 文件。
我尝试了各种解决方案遗漏了一些东西
尝试在 Windows 中设置环境变量如下
名称:SPRING_CONFIG_NAME 值:D:/test/application.properties
我为上述值尝试了多个值,例如前缀中的 file:/// 和只有 file: as perfix 。没有任何效果
尝试使用上下文参数是 tomcat,如下面提到的 SO 答案 https://stackoverflow.com/a/44697239/2751962
尝试在扩展 SpringBootServletIntializer 的主文件中像这样加载
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(Application.class) .properties(getProperties()); }
public static void main(String[] args) throws Exception {
SpringApplication.run(Application.class, args);
SpringApplicationBuilder springApplicationBuilder = (SpringApplicationBuilder) (new SpringApplicationBuilder(Application.class))
.sources(Application.class)
.properties(getProperties())
.run(args);
}
static Properties getProperties() {
Properties props = new Properties();
props.put("spring.config.location", "file:///D:/test/application.properties");
return props;
}
我不确定我错过了什么,请帮忙。
相关分类