我的课程中有以下弹簧标题
@Service
@EnableAutoConfiguration(exclude = {HibernateJpaAutoConfiguration.class})
@ComponentScan({"com.package1", "com.package2", "com.package3"})
public class SomeContainer { }
您是否有可能将此软件包(" com.package1,2,3等)提取到单独的属性文件中,但是要保持注释驱动样式?
答案 0 :(得分:1)
上一张海报试图说的是什么,我将澄清这一点。我的主app类看起来像这样:
@Import(AppConfig.class)
public class App implements CommandLineRunner {
public static void main(String[] args) throws Exception {
SpringApplication.run(App.class, args);
}
public void run(String... args) {
// Do something
}
}
Appconfig就像这样:
@Configuration
@ComponentScan(basePackages = "${scan.packages}")
@EnableAutoConfiguration
public class AppConfig {
}
application.properties文件位于src / main / resources文件夹中,自动查找该文件并包含我的scan.packages行:
scan.packages=com.mypackage
如果你从App类的main方法运行它,那么一切都将被正确配置。
希望这有助于某人。
答案 1 :(得分:-1)
尝试将您的属性添加到文件中,例如application.properties,并将它们注入您的配置类
@Configuration
@PropertySource("classpath:/application.properties")
public class ConfigApp {
}
@ComponentScan("${scan.packages}")