BUG:required a single bean, but 2 were found:

这篇具有很好参考价值的文章主要介绍了BUG:required a single bean, but 2 were found:。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Description:

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


    - x: defined in file [cxServiceImpl.class]
    - x1: defined in file [cxcgServiceImpl.class]


Action:

Consider marking one of the beans as @Primary, updating the consumer to accept multiple beans, or using @Qualifier to identify the bean that should be consumed

这个错误提示显示在 Spring 容器中存在一个类型为 X 的成员变量,并且有多个实现类与之对应,因此 Spring 无法确定要注入哪个实现类。

出现这种错误的原因通常是因为没有明确指定要注入哪个实现类。解决这个问题的方法主要有以下两种:

  1. 使用 @Qualifier 注解

可以使用 @Qualifier 注解来指定所需的实现类的 Bean 名称,例如:

@Autowired

@Qualifier("gdwlcxServiceImpl")

private X xService;

      2.使用 @Primary 注解

如果有多个实现类都满足依赖注入条件,可以使用 @Primary 注解来指定默认的实现类,例如:

@Service

@Primary

public class Ximpl implements XService { // ... }

使用 @Primary 注解后,Spring 会默认使用该注解标注的实现类作为依赖注入的默认选择。

综上所述,如果出现上述错误,可以通过使用 @Qualifier 或者 @Primary 注解来明确指定要注入哪个实现类。文章来源地址https://www.toymoban.com/news/detail-831407.html

到了这里,关于BUG:required a single bean, but 2 were found:的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 解决SpringBoot启动失败:A component required a bean of type ‘xxxxxxx‘ that could not be found.

    今天写了一个MD5加密加盐工具类,运用到实际业务代码中缺报错了,内容如下: 根据错误日志不难发现,其实是因为组件没有被找到。因为这个工具类是我自己写的。 然后我就去检查代码,最终发现,我把这个工具类以注解的形式注入进来并使用 但是,这个工具类里面,我

    2024年02月20日
    浏览(45)
  • forward() takes 2 positional arguments but 3 were given

    问题描述: 在forward中明明正确数量的参数,却报错:forward() takes 2 positional arguments but 3 were given; 问题分析: 使用nn.Sequential()定义的网络,只接受单输入 例如: self.backbone=nn.Sequential(nn.lstm(input_size=20, hidden_size=40, num_layers=2),                                     nn.linear(

    2024年02月11日
    浏览(42)
  • TypeError: __init__() takes 1 positional argument but 2 were given

    在网上阅读了大量的博文。基本上都是因为没有实例化对象而导致的错误。如果没有实例化对象,或者压根就不知道自己有没有实例化对象的小伙伴们可以点击以下博文: Pytorch报错TypeError : init () takes 1 positional argument but 2 were given 原因及解决方法 或者是因为少传了参数,导

    2024年02月12日
    浏览(40)
  • 【已解决】TypeError: __init__() takes 1 positional argument but 3 were given

    TypeError: __init__() takes 1 positional argument but 3 were given 类型错误:__init__()函数需要1个参数,但给出了3个参数 本人练习的代码中,其父类__init__()函数中的参数只有一个(个人原因少写了!),而在其子类实际调用的的参数需要三个,所以在调用的时候出现此类报错。 查找其他问

    2024年02月04日
    浏览(44)
  • 【已解决 TypeError: barplot() takes from 0 to 1 positional arguments but 2 were given】

    1.先放代码: 报错信息: 解决方案:代码更改如下 此时不会报错了: 2.代码更改原理:简要了解一下函数用法 sns.barplot()函数:根据特征重要程度进行排序并输出 先看sns.barplot的官方用法: 3.函数用法实例 结果: 总结:不可以对坐标写入的xy省略。横纵坐标轴的写入需要按

    2024年02月16日
    浏览(39)
  • IndexError: too many indices for array: array is 1-dimensional, but 2 were indexed

    运行代码发现了IndexError: too many indices for array: array is 1-dimensional, but 2 were indexed这个报错,  后来去百度发现是这段代码出了问题 因为定义的calculate_performance里面要求的数据是有两个索引,但是这些数据是一维的,所以才会报这个错误。后来学习发现了.reshape这个用法改变数组

    2024年02月11日
    浏览(60)
  • Pytorch报错TypeError : __init__() takes 1 positional argument but 2 were given 原因及解决方法

    问题 : Pytorch报错TypeError : __init__() takes 1 positional argument but 2 were given 解决方法 : 在网上搜了下,都是说自己的模型定义错误,我看了下,发现也没有错误,就很懵! 然后看看之前的代码发现我没有实例化!!! 贴代码 : 这个模块没有毛病。 可总是报错: __init__() takes

    2024年02月13日
    浏览(47)
  • python执行函数时报错TypeError: create_pointer_down() takes 1 positional argument but 2 were given

     在调用函数时出现了这个报错new_input.create_pointer_down(MouseButton.LEFT) TypeError: create_pointer_down() takes 1 positional argument but 2 were given,意思是说这个函数只接收一个变量,但实际上却给了两个变量,我搜索到说如果这个函数是自己在类里定义的,那么应该在类的函数参数在最前方加

    2023年04月09日
    浏览(40)
  • Junit运行错误:报错no tests were found

    在正常书写测试类时,尝试运行发现报错:no tests were found 上网搜索出现该情况的可能性主要为 1.@Test注解的单元测试方法不能有返回值 2.进行单元测试的方法不能私有化 修改单元测试方法后问题仍未得到解决 后来发现可能是junit依赖有问题,更换junit依赖版本为4.12(原本使

    2024年02月03日
    浏览(52)
  • Junit测试运行出现No tests were found

    执行contextLoads()方法的时候是没问题的。 当想单独执行add()方法时就出现了No tests were found这个错误。 然后我试着将add()方法返回值改成void,执行成功。 又试了一下将方法定义为private,同样报错。 @Test注解的单元测试方法 不能有返回值 ,要用 void 。 方法定义为 private 的也不

    2024年02月11日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包