Java 通过构造函数参数表示的未满足依赖关系-在字符串的构造函数中查找布尔值

Java 通过构造函数参数表示的未满足依赖关系-在字符串的构造函数中查找布尔值,java,spring,spring-bean,Java,Spring,Spring Bean,我有一段遗留代码,它抱怨bean的创建,因为它似乎试图使用一个构造函数而不是另一个: org.springframework.beans.factory.unsatifiedDependencyException:创建名为“catService”的bean时出错,该bean在类路径资源[catContext.xml]中定义:未满足的依赖项通过索引为[boolean]的构造函数参数表示:构造函数参数类型不明确-是否将正确的bean引用指定为构造函数参数 bean的XML定义如下: <bea

我有一段遗留代码,它抱怨bean的创建,因为它似乎试图使用一个构造函数而不是另一个:

org.springframework.beans.factory.unsatifiedDependencyException:创建名为“catService”的bean时出错,该bean在类路径资源[catContext.xml]中定义:未满足的依赖项通过索引为[boolean]的构造函数参数表示:构造函数参数类型不明确-是否将正确的bean引用指定为构造函数参数

bean的XML定义如下:

 <bean id="catService" class="com.example.CatService" lazy-init="false">
    <constructor-arg  type="java.lang.String" value="${catName}" />
</bean>

为什么Spring试图使用“错误”的构造函数?

因此,在经历了令人沮丧的两天之后,问题完全解决了

没有代码更改

我执行的一些操作:

  • 计算机重启
  • mvn清理
    到父项目
  • mvn clean
    到导致问题的依赖项项目
  • IntelliJ多次“使缓存无效并重新启动”
  • GIT“抖动”-在不同的分支之间来回移动

看起来他们中没有一个人是靠自己创造奇迹的,尽管我认为主要的贡献者是导致问题的依赖项目的
mvn clean
,因此在令人沮丧的2天后,问题完全解决了

没有代码更改

我执行的一些操作:

  • 计算机重启
  • mvn清理
    到父项目
  • mvn clean
    到导致问题的依赖项项目
  • IntelliJ多次“使缓存无效并重新启动”
  • GIT“抖动”-在不同的分支之间来回移动

似乎他们中没有一个人独自完成了这个魔术,尽管我认为主要的贡献者是导致这个问题的依赖项目的
mvn clean
,你有一个名为
catName
的字符串属性/bean吗?@lealcelderio是的,在另一个文件中有这样的字符串属性(但IntelliJ在单击“ctrl”->
无法找到要转到的声明时无法识别它。
@lealcelderio该应用程序在从CLI运行时也会出现相同的错误您是否有名为
catName
的字符串属性/bean?@lealcelderio是的,另一个文件中有这样的字符串属性。)(但IntelliJ在单击“ctrl”->
无法找到要转到的声明时无法识别它。从CLI运行时,应用程序也会出现相同的错误。)
@Autowired
public CatService(String catName) {
    ...
}

public CatService(){
 ...
}


public CatService(boolean isHungry){
   ...
}