【发布时间】:2022-01-19 19:03:33
【问题描述】:
我有一个如下所示的Controller,添加@Value("${code.url}") final String url后,我遇到以下错误:
无法解析值“${code.url}”中的占位符“code.url” 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean
问题明显与code.url中application.yml中的问题有关。
application.yml:
code:
url: "https://www.gmail.com/"
控制者:
@RestController
@RequestMapping("/api/v1")
public class DemoController {
private final DemoService demoService;
private final Clock clock;
private final String url;
public DemoController(final DemoService demoService, final Clock clock,
@Value("${code.url}") final String url) {
this.demoService = demoService;
this.clock = clock;
this.url = url;
}
//code omitted
}
我也尝试在控制器中使用@RequiredArgsConstructor,但没有任何意义。
那么,我该如何解决这个问题呢?
【问题讨论】:
-
这真的是你的
application.yml吗? -
查看文档docs.spring.io/spring-boot/docs/1.2.0.M1/reference/html/… 并相应地格式化您的 application.yml。
-
@JoãoDias 是的,
application-local.yml,但我当然省略了其他部分。 -
@JorgeCampos 抱歉,没有显示我的代码,我的
application.yml中的缩进也没有问题。但问题还在继续。有什么想法吗? -
application.yml 在您的项目中位于何处?
标签: java spring spring-boot yaml