【发布时间】:2019-03-30 12:13:27
【问题描述】:
我不确定这是一个错误。事实上,这可能是预期的行为。
假设我有以下配置类
@ConfigurationProperties("app")
public class ApplicationConfiguration {
public String uri = "/api/v1";
// I also tested with optional, no difference
// public Optional<String> uri = Optional.of("/api/v1");
}
我在控制器上使用注解@Controller("${app.uri}/some/path")。
如果我没有在application.yml 中添加条目,那么最终会出现以下错误:
Could not resolve placeholder ${app.uri} in value: ${app.uri}/some/path
如果我将以下行添加到我的application.yml
app:
uri: /api/v2
然后一切正常:占位符解析为/api/v2,并且可注入配置对象中的值设置为/api/v2,而不是默认值/api/v1。
我原以为如果我不在 application.yml 中设置值,则该类中的默认值将被解析 (/api/v1)。
同样,这可能只是设计使然,这很好。我只是想知道我是否做错了什么,在这种情况下,如何解决。
【问题讨论】:
标签: micronaut