SpringBoot main/Application.java クラスがあります
@SpringBootApplication
@ComponentScan(value = "com.nfl.dm.shield", excludeFilters =
{
@ComponentScan.Filter(value = MemoryRepository.class, type = FilterType.ASSIGNABLE_TYPE)
}
)
public class Application {
final static Logger LOG = LoggerFactory.getLogger(Application.class);
public static void main(String[] args) {
LOG.info("Booting application...");
SpringApplication.run(Application.class, args);
}
}
およびテスト用の同様のもの
@Configuration
@ComponentScan(basePackages = {"com.nfl.dm.shield"}, excludeFilters =
{
@ComponentScan.Filter(value = MySqlRepository.class, type = FilterType.ASSIGNABLE_TYPE)
}
)
public class ApplicationTestConfig {
}
メイン コードは正しく実行されます。テスト コードは NoUniqueBeanDefinitionException をスローし、不要な MySqlRepository コンポーネントを適切に除外していないように見えます。