【问题标题】:spring-boot without @SpringBootApplication没有@SpringBootApplication 的spring-boot
【发布时间】:2016-01-22 07:14:51
【问题描述】:

我正在尝试将弹簧非启动应用程序迁移到启动应用程序。当前的构建一个战争文件。按照these 的说明,我正在逐步完成迁移。

我发现 @SpringBootApplication 注释迫使很多事情失败。例如,当我真的需要现有的 xml 安全配置保持原样时,它会尝试自动配置安全性。我发现我可以覆盖 @EnableAutoConfiguration 并排除配置类(即 SecurityAutoConfiguration.class)。但我发现它对我的类路径中已有的项目做了很多。我决定最好删除@SpringBootApplication 并将其替换为仅@Configuration、@ComponentScan 和@ImportResource 以加载我的原始上下文xml。该类扩展了 SpringBootServletInitializer,以便我可以注册我的自定义 servlet 和过滤器。

我发现,它现在不再知道加载 application.yml 或 bootstrap.yml。是什么触发了这些文件的自动配置?我是否回退到使用传统的属性占位符配置器加载?我想避免这种情况,因为下一步是将其连接到 spring cloud config 以集中管理应用程序配置。

【问题讨论】:

    标签: spring spring-boot


    【解决方案1】:

    @SpringBootApplication@Configuration@EnableAutoConfiguration@ComponentScan 的替代品。

    可能你想使用@Configuration + @ComponentScan。如果要加载 xml 配置,可以使用:@ImportResource 注释。

    如果您想使用自动配置,但您可以禁用一些自动配置,例如: @EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})

    详情:

    【讨论】:

      猜你喜欢
      • 2019-10-29
      • 2017-06-03
      • 2020-10-21
      • 1970-01-01
      • 2020-03-12
      • 1970-01-01
      • 2017-07-22
      • 1970-01-01
      • 2020-04-03
      相关资源
      最近更新 更多