Я использую конфигурацию на Java для настройки моего контекста приложения Spring следующим образом:
@Configuration
@Lazy
@ComponentScan(basePackageClasses = {MyProject.class, OtherProject.class})
public class MyAppConfig {
...
}
Beans, явно определенные в конфиге, загружаются лениво, как и следовало ожидать. Однако сканированные классы, аннотированные с помощью @Named, всегда загружаются с нетерпением. Как я могу это решить?
Любая помощь приветствуется.
Обратите внимание, что для классов в пакете MyProject я могу обойти это, аннотируя их с помощью @Lazy. Но другой проект не имеет зависимости от Spring, и я хочу сохранить его таким образом (отсюда @Named, а не @Component).
Обратите внимание также, что это не является проблемой, связанной с конфигурацией на основе XML. Там, устанавливая default-lazy-init="true" в тегах <beans>, чтобы делать то, что я хочу (хотя я не тестировал это).