如何在spring-boot的Yaml文件中为占位符的命令行设置值

时间:2015-10-07 13:34:45

标签: spring-boot yaml

我有一个application.yml文件,其中包含一些占位符,例如

security:
  user:
    password: ${ADMIN_PASSWORD}

我尝试过运行e..g

./gradlew :project:bootRun -DADMIN_PASSWORD=admin
./gradlew :project:bootRun -PADMIN_PASSWORD=admin
./gradlew :project:bootRun --ADMIN_PASSWORD=admin

但占位符未被替换。在YAML文件中将命令行值传递给占位符模板化变量的正确方法是什么?

1 个答案:

答案 0 :(得分:2)

参数不会通过bootRun任务自动传入(参见https://github.com/spring-projects/spring-boot/pull/592)。

我将此添加到我的build.gradle以获取您要求的行为:

bootRun {
    // allows ./gradlew bootRun -Dspring.profiles.active=dev
    systemProperties System.properties
}