【发布时间】:2020-01-26 15:05:12
【问题描述】:
我有以下代码:
这是我的第一堂课,会调用
@Component
class DefaultBridge @Autowired constructor(
private val clientConfig: Config,
private val client: world.example.Client
) : Bridge {
override fun doEpicStuff(): String {
val request = createRequest(...)
val response = client.makeCall(request)
return response.responseBody
}
}
正在使用的客户端 (world.example.Client) 具有以下代码:
public class Client {
@Autowired
private RestTemplate restTemplate;
public Response makeCall(Request request) {
restTemplate.exchange(....)
}
}
运行代码时。我收到以下错误:
NoSuchBeanDefinitionException: 没有符合条件的 bean 类型 'org.springframework.web.client.RestTemplate' 可用:预计在 至少 1 个符合自动装配候选资格的 bean。依赖 注释: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
- 自动装配构造函数时,我应该在哪里声明 bean?
- 为什么spring不会自动创建bean?
我需要帮助理解问题,所以请不要只发布解决方案。
【问题讨论】:
标签: spring spring-boot dependency-injection autowired spring-bean