gpt4 book ai didi

java - 如何排除除@ComponentScan 下的一个类之外的所有@Component 类?

转载 作者:搜寻专家 更新时间:2023-11-01 03:33:47 24 4
gpt4 key购买 nike

我的代码中有以下注释:

@ComponentScan(basePackageClasses={MyClass.class},
excludeFilters={@Filter(Component.class)}, //@Component
includeFilters={@Filter(type=ASSIGNABLE_TYPE, classes=MyClass.class)}
)

MyClass@Component 注释,但仍想在组件扫描期间包含它。但是,组件扫描过滤器似乎使用 and 逻辑而不是 or。我如何实现我想做的事情?

最佳答案

@Configuration 在所有情况下都比 @ComponentScan 更具确定性。

而不是解决 @ComponentScan 注释。您应该尝试在 @Configuration 类中将您的 MyClass.class 显式列为 @Bean,例如:

@Configuration
public class MyClassConfiguraiton {

@Bean
public MyClass myClass() {
return new MyClass();
}
}

然后显式@Import配置类而不是@ComponentScan注解:

@Import(MyClassConfiguratrion.class)

或者通过组件扫描机制导入它(因为 @Configuration 是用 @Component 进行元注释的)。

关于java - 如何排除除@ComponentScan 下的一个类之外的所有@Component 类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38722617/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com