首页 > 解决方案 > Spring Boot:禁用 JmsAutoConfiguration

问题描述

我的 Springbootloader 看起来都像

@SpringBootApplication(scanBasePackages = "com.xxx.aaa.api",exclude = {MongoAutoConfiguration.class, MongoDataAutoConfiguration.class, JmsAutoConfiguration.class})

@EnableJms 公共类 ApplictionBoot 扩展 SpringBootServletInitializer {

@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
    return application.sources(ApplictionBoot.class);
}

@Bean
public InternalApiInitializer internalApiInitializer() {
    return new InternalApiInitializer();
}

@Bean
  public JmsListenerContainerFactory<?> myFactory(
      ConnectionFactory connectionFactory,
      DefaultJmsListenerContainerFactoryConfigurer configurer) {
    DefaultJmsListenerContainerFactory factory = new DefaultJmsListenerContainerFactory();
    configurer.configure(factory, connectionFactory);
    return factory;
  }
@Bean
  public JmsTemplate jmsTemplate(ConnectionFactory connectionFactory) throws JMSException {
        return new JmsTemplate(connectionFactory);
    }

 @Bean
    public EmbeddedServletContainerFactory servletContainer() {
        TomcatEmbeddedServletContainerFactory factory = 
                      new TomcatEmbeddedServletContainerFactory();
        return factory;
     }

public static void main(String[] args) {

    SpringApplication.run(ApplictionBoot.class, args);

}

}

即使在禁用自动配置加载器之后,我也被阻止了

org.springframework.boot.actuate.autoconfigure.CrshAutoConfiguration$CrshBootstrapBean in Module "deployment.application.war:main" from Service Module Loader: java.lang.LinkageError: Failed to link org/springframework/boot/actuate/autoconfigure/CrshAutoConfiguration$CrshBootstrapBean (Module "deployment.application.war:main" from Service Module Loader)

尝试使用在 Spring Boot 应用程序中禁用 Spring JMS 自动配置中提供的选项但死路一条,任何人都可以帮助我摆脱它。

标签: springspring-bootjbosscloudopenshift

解决方案


你的创业失败是因为CrshAutoConfiguration,我相信这与 无关JmsAutoConfiguration

CrshAutoConfiguration.class也在排除配置中添加


推荐阅读