关于在Springboot中同时使用@AllArgsConstructor和@Value出现的问题

场景:

  • 类上用@AllArgsConstructor注解来实现Bean的构造函数方式的注入

  • 参数包括@Value注解下的属性

报错:

1
2
3
Description:
Parameter 8 of constructor in com.zhongkerd.job.service.jobhandler.kalibrate.KalibrateOilPriceServiceImpl required a bean of type 'java.lang.String' that could not be found.
无法找到配置信息。

解决:

若类内有@Value注解,使用@RequiredArgsConstructor代替@AllArgsConstructor,然后把需要注入的bean改成final类型。