【发布时间】:2017-08-03 14:53:05
【问题描述】:
我想我已经阅读了有关该主题的所有内容,但无法获取 @PropertySource 注释来读取环境变量。
这很好用:
@PropertySource("文件:C:\Code\java\myappname\configuration\myappname_config.properties")
但我确实需要从环境中读取路径,所以我设置了 myappname_path 环境变量(我在 Windows 上,使用 SpringBoot 1.5.4)
其中任何一个都让我“无法解析占位符”异常:
@PropertySource("文件:${myappname_path}\myappname_config.properties") @PropertySource("file:${systemProperties['myappname_path']}\myappname_config.properties")
非常感谢您的帮助。
更新:好的,那是我的错。显然,在这种情况下,需要重新启动才能使系统属性生效。 所以现在这个语法有效: @PropertySource("file:${myappname_path}\myappname_config.properties")
这个没有,但没那么重要: @PropertySource("file:${systemProperties['myappname_path']}\myappname_config.properties")
非常感谢您的回复。
【问题讨论】:
-
它应该可以工作。你是如何以及何时定义它的?你是如何运行应用程序的?
-
检查这个stackoverflow.com/questions/4779572/…,尤其是第二个答案
标签: java spring properties