Я пытаюсь создать приложение, которое использует аннотации Spring для импорта конфигураций.Для этого вопроса я сузил его до двух файлов.Класс запуска:
package core;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
@Slf4j
@Configuration
@Import(ConfigSettings.class)
public class Startup {
public static void main (String args[]) {
log.info("main class");
}
}
и ядро пакета ConfigSettings;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
@Slf4j
@Configuration
@ComponentScan({"connections", "filter"})
@PropertySource({"classpath:config/${env.config:dev}.application.properties"})
public class ConfigSettings {
public ConfigSettings() {
log.info("Constructor ConfigSettings");
}
}
Я ожидал, что результат будет:
[INFO]Constructor ConfigSettings
[INFO]main class
Но он показывает только основной класс.Похоже, конструктор настроек конфига вообще не вызывается.Я ожидаю, что это вызовет это из-за аннотации импорта.
Может кто-нибудь объяснить, что происходит не так?Заранее спасибо!