我有一个application.properties
文件,如下所示:
mcl.sso.frontend-url=http://blah.com:9001
mcl.sso.mocking-agent=false
我试图从命令行覆盖这两个变量。这应该可以通过设置环境变量来实现。以下是我如何运行命令:
MCL_SSO_FRONTEND_URL='foobar' MCL_SSO_MOCKING_AGENT='true' ./gradlew run
但是,当我打印出这些变量的值时,mcl.sso.mocking-agent
等于" true" (正如预期的那样),但mcl.sso.frontend-url
仍然等于" http://blah.com:9001" (意外)。为什么不mcl.sso.frontend-url
改变财产的价值?我只能假设这与Spring将环境变量转换为属性键的方式有关,但我无法找到关于此的任何特定文档。
答案 0 :(得分:2)
从Spring Boot 1.2.5
开始修复此问题。以前,您必须使用MCL_SSO_FRONTEND-URL
(请注意无法转换为下划线的短划线。)
您可以使用this sample project来播放绑定。
答案 1 :(得分:0)
去掉破折号:
mcl.sso.mocking-agent > MCL_SSO_MOCKINGAGENT