从组件扫描中排除@SpringBootApplication

Exclude @SpringBootApplication from component scanning

我在一个目录下有两个类标记为@SpringBootApplication

@SpringBootApplication
public class FirstSpringBootApplication 

@SpringBootApplication
public class SecondSpringBootApplication

@SpringBootApplication注解包含@ComponentScan注解和@EnableAutoConfiguration注解。因此,这两个 类 中的每一个都会将另一个视为 @Configuration bean。如何在 SecondSpringBootApplication 不使用 使用配置文件的情况下将 FirstSpringBoodApplication 从组件扫描中排除?

带有以下注释的注释 class 的工作方式与 @SpringBootApplication 类似。它也做同样的事情,excludeFilter很重要,用于指定在扫描时不包括哪个class。

@EnableAutoConfiguration
@ComponentScan(excludeFilters={@Filter(type=CUSTOM, classes={TypeExcludeFilter.class})})

如果您需要定义两个或多个 excludeFilters 条件,则必须使用数组。

对于这部分代码中的实例,我想排除 org.xxx.yyy 包中的所有 classes 和另一个特定的 class,MyClassToExclude