我在其他类注入的时候出现以下错误

@Autowired
NodeAgentService nodeAgentService;

 

异常

Description:

Field mibService in com.xxx.xxx.controller.SnmpController required a single bean, but 2 were found:
- mibServiceImpl: defined in file [F:\xxxx\monitorcenter\target\classes\com\xxx\xxx\service\impl\MibServiceImpl.class]
- nodeAgentServiceImpl: defined in file [F:\xxxx\monitorcenter\target\classes\com\xxx\xxx\service\impl\NodeAgentServiceImpl.class]

解决方法:在mibService实现类添加注解

@Primary

 

springboot环境下遇到这个问题,解决方案参考来源:https://stackoverflow.com/questions/46343560/class-required-a-single-bean-but-2-were-found

public interface OIDService {
}

@Slf4j
@Service
public class OIDServiceImpl implements OIDService {
}

public interface MibService extends OIDService{
}

@Service
@Slf4j
@Primary
public class MibServiceImpl extends OIDServiceImpl implements MibService
{}


public interface NodeAgentService extends MibService{
}

@Service
@Slf4j
public class NodeAgentServiceImpl extends MibServiceImpl implements NodeAgentService {
}
posted on 2019-07-18 09:59  你不知道的浪漫  阅读(6737)  评论(0编辑  收藏  举报