内容不全面处,欢迎大佬们提醒,我会随时遇见随时补充。
1. 报错出现
这个报错是在学习SpringBoot中@Value时遇到的,当时在比较@ConfigurationProperties和@Value的区别。
@Value("${person.last-name}")
private String lastName;
之后单元测试就出现了如下报错:
java.lang.IllegalStateException: Failed to load ApplicationContext
...
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'person': Injection of autowired dependencies failed; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'person.last-name' in value "${person.last-name}"
...
2. 报错原因
application.properties文件忘记配置。为了学习@PropertySource,我把全局配置文件注释掉了。学@Value时忘记恢复。
3. 解决方法
恢复application.properties配置内容。重新运行即可。
文中只针对我遇到的问题进行解决,该报错的其他触发情况欢迎各位大神补充!