编译我的Web应用程序时,我一直收到错误消息。错误说:'无法自动装配字段:TaskService'等。
我有以下设置:
界面:TaskService
public interface TaskService {
String method1();
String method2();
}
接口的实现:TaskServiceImpl
@Primary
@Service
public class TaskServiceImpl implements TaskService {
@Inject MethodService methodService;
@Inject ProviderService providerService;
@Override
public String method1(){
return "X";
}
@Override
public String method2(){
return "Y";
}
}
然后控制器使用服务TaskService:TaskController
@Controller
public class TaskController(){
@Inject TaskService taskService;
@RequestMapping(value = {"/task"}, method = RequestMethod.GET)
public String getTask(Model model){
model.addAttribute("task", taskService.method1());
return "task.html";
}
通过上述设置,我收到错误HTTP Status 500. Servlet.init() 创建名为'TaskController'的bean时出错:注入自动连接的依赖项失败;无法自动装配字段:TaskService
如果从TaskController中删除注释@Controller,则程序可以启动。有没有人知道为什么会这样?