猿问

Spring中构造函数参数的歧义

我有一个关于类型歧义的错误:


org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'blankRestoreFromRecycleUiOperation' defined in URL: Could not resolve matching constructor (hint: specify index/type/name arguments for simple parameters to avoid type ambiguities)

这是我的 spring xml 映射:


<bean id="blankRestoreFromRecycleUiOperation" class="BlankRestoreFromRecycleUiOperation">

    <constructor-arg index="0" value="blankTab"/>

    <constructor-arg index="1" value="false"/>

</bean>

我的java类:


public class BlankRestoreFromRecycleUiOperation implements RestoreFromRecycleUiOperationAware {


       private String tab;

       private boolean green;


       public BlankRestoreFromRecycleUiOperation(String tab, boolean green) {

            this.tab = tab;

            this.green = green;

       }

}

所以,其他类似的问题说的是正确的构造函数参数索引和命名,但在这里我想我错过了其他东西。同样在发布之前,我尝试添加这样的参数类型:


<bean id="blankRestoreFromRecycleUiOperation" class="BlankRestoreFromRecycleUiOperation">

    <constructor-arg index="0" type="java.lang.String" value="blankTab"/>

    <constructor-arg index="1" type="boolean" value="false"/>

</bean>

然后得到了同样的错误。


您能否指定正确的方法或缺失的部分?提前感谢您的回答。


已解决:问题与IDE和gradle版本有关。有 2 个不同版本的 Spring 导致整个应用程序工作出错。无论如何感谢您的回答。


哔哔one
浏览 268回答 2
2回答

有只小跳蛙

只需尝试在 class = "com.jwt.spring.BlankRestoreFromRecycleUiOperation"> 中的 XML 映射可能会有所帮助,因为这种类型的错误称为注入类型歧义。我希望它会有所帮助。
随时随地看视频慕课网APP

相关分类

Java
我要回答