【发布时间】:2017-11-29 13:19:38
【问题描述】:
我有使用三个数据源的 spring 应用程序,详细信息存储在我的 application.properties 文件中。 我希望为用户名和密码使用环境变量,见下文:
spring.datasource1.username=${DB1_Username}spring.datasource1.password=${DB1_Password}
这在我正常启动应用程序时工作正常,但在我运行测试时不行。尝试运行测试时出现以下错误:
com.microsoft.sqlserver.jdbc.SQLServerException:用户“${DB1_Username}”登录失败。运行测试时,application.properties 文件中可以不使用环境变量吗?还是我在做傻事?
【问题讨论】:
-
你如何运行你的测试?
-
我正在使用 gradle build 命令。当我使用 gradle build --debug 时,我看到了上面的错误。
-
它们可以使用,但可能不会在您启动时设置的 gradle 过程中设置。您还可以通过注释覆盖测试中的特定变量,以免依赖于为测试设置的环境
-
引导文档中清楚地记录了这个特定的用例
标签: java spring-boot environment-variables