Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在Spring中使用@Conditional注释有条件地解析bean依赖关系_Java_Spring - Fatal编程技术网

Java 如何在Spring中使用@Conditional注释有条件地解析bean依赖关系

Java 如何在Spring中使用@Conditional注释有条件地解析bean依赖关系,java,spring,Java,Spring,我有一个bean,它也依赖于另一个bean,这两个bean都用相同的spring条件注释: @Component @Conditional(ImportEnabledCondition.class) public class ImportEntityResource { @Autowired ImportService importService; .... } importService: @Component @Conditional(ImportEnabledCondition.cla

我有一个bean,它也依赖于另一个bean,这两个bean都用相同的spring条件注释:

@Component
@Conditional(ImportEnabledCondition.class)
public class ImportEntityResource {

@Autowired
ImportService importService;
....
}
importService:

@Component
@Conditional(ImportEnabledCondition.class)
public class ImportService{...}
但是我总是得到
org.springframework.beans.factory.NoSuchBeanDefinitionException
异常。
我非常感谢任何关于如何解决这个问题的建议。

@Conditional用于在Spring上下文中注册bean,具体取决于一些条件。在您的情况下,您可以删除它,因为Spring会将依赖项视为ImportEntityResource的ImportService成员。如果依赖关系不太明确,那么可以使用@DependsOn。

查看您的两个bean,您不应该出现这样的异常1)如果条件的计算结果为true,那么两个bean都会被创建2)如果条件的计算结果为false,那么两个bean都不会被创建。所以我想,你已经连线了ImportEntityResource,并且抛出了
NoSuchBeanDefinitionException
,没有完整的堆栈状态,无法回答