问题描述
我创建了这个类:
public class ActivitiWorkflowService {
private final TaskService taskService;
..
}
但是我在初始化项目时遇到了这个问题:
No qualifying bean of
type 'org.activiti.engine.TaskService' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {}
解决方法
我希望你的类有一个构造函数,例如:
public class ActivitiWorkflowService {
private final TaskService taskService;
public ActivitiWorkflowService(TaskService taskService) {
this.taskService = taskService;
}
}
您遇到的错误是因为 Spring 无法将此类自动装配到 ActivitiWorkflowService
- 它可能未在 Spring
上下文中定义。
根据您使用的配置,您可以:
使用 @Component
或 @Service
注释定义类并让 @ComponentScan
完成其工作:
@Component //@Service
public TaskService {
...
}
或者如果您使用 @Configuration
类定义类型为 TaskService
@Configuration
public class AppConfig {
@Bean
public TaskService taskService() {
return new TaskService();
}
@Bean
public ActivitiWorkflowService activitiWorkflowService(TaskService taskService) {
return new ActivitiWorkflowService(taskService);
}
}