package com.haogrgr.test.main; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; public class SpringConditionTest { public static void main(String[] args) { AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(ConfigA.class, ConfigB.class); System.out.println(ctx.containsBeanDefinition("bean1"));//true System.out.println(ctx.containsBeanDefinition("bean2"));//false ctx.close(); } @Configuration public static class ConfigA { @Bean public JustABean bean1() { return new JustABean(); } @Bean public JustABean springConditionTest() { return new JustABean(); } } @Configuration @SpringConditionTestAnno(SpringConditionTest.class) public static class ConfigB { @Bean public JustABean bean2() { return new JustABean(); } } public static class JustABean {} }