如何在 spring 引导应用程序中使用命令行参数读取自定义 属性 文件
how to read custom property files with command line argument in a spring boot application
启动我的 spring 启动应用程序时,我想使用命令行参数设置自定义配置文件路径,例如:
java -jar some.jar -DConfigPath=conf/config.local(or conf/config.prod)
那么如何读取这个文件来生成spring配置呢?
我可以以某种 "dynamic" 的方式使用注释 @PropertySource
吗?
尝试使用
spring.config.location
像这样
java -jar some.jar --spring.config.location=file:some-project/src/main/resources/conf/config.prod
这应该像任何 application.properties 文件一样读取您的配置
好的,我发现注解@PropertySource可以获取命令行参数注入的值
@Configuration
@ConfigurationProperties
@PropertySource(value = "file:${ConfigPath}")
public class MyConfig {
@Getter
@Value("${property_name}")
private String myproperty;
}
启动我的 spring 启动应用程序时,我想使用命令行参数设置自定义配置文件路径,例如:
java -jar some.jar -DConfigPath=conf/config.local(or conf/config.prod)
那么如何读取这个文件来生成spring配置呢?
我可以以某种 "dynamic" 的方式使用注释 @PropertySource
吗?
尝试使用
spring.config.location
像这样
java -jar some.jar --spring.config.location=file:some-project/src/main/resources/conf/config.prod
这应该像任何 application.properties 文件一样读取您的配置
好的,我发现注解@PropertySource可以获取命令行参数注入的值
@Configuration
@ConfigurationProperties
@PropertySource(value = "file:${ConfigPath}")
public class MyConfig {
@Getter
@Value("${property_name}")
private String myproperty;
}