Field in required a single bean, but 2 were found:


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

@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 {
}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM