2016-08-05 21 views
22

Beim Starten meiner App mit Intellij funktionierte alles gut. Aber als ich gemacht fatJar und ausgeführt:SpringBoot - Erstellen von JAR-Dateien - Keine automatischen Konfigurationsklassen in META-INF/spring.factories gefunden

java -jar myapp.jar 

Ich habe dies:

16:37:44.194 [main] ERROR org.springframework.boot.SpringApplication - Application startup failed 
org.springframework.beans.factory.BeanDefinitionStoreException: Failed to process import candidates for configuration class [pl.mypackage.Main]; nested exception is java.lang.IllegalArgumentException: No auto configuration classes found in META-INF/spring.factories. If you are using a custom packaging, make sure that file is correct. 
     at org.springframework.context.annotation.ConfigurationClassParser.processDeferredImportSelectors(ConfigurationClassParser.java:489) 
     at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:191) 
     at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:321) 
     at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:243) 
     at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:273) 
     at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:98) 
     at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:681) 
     at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:523) 
     at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122) 
     at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759) 
     at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:369) 
     at org.springframework.boot.SpringApplication.run(SpringApplication.java:313) 
     at org.springframework.boot.SpringApplication.run(SpringApplication.java:1185) 
     at org.springframework.boot.SpringApplication.run(SpringApplication.java:1174) 
     at pl.mypackage.Main.main(Main.java:39) 
Caused by: java.lang.IllegalArgumentException: No auto configuration classes found in META-INF/spring.factories. If you are using a custom packaging, make sure that file is correct. 
     at org.springframework.util.Assert.notEmpty(Assert.java:276) 
     at org.springframework.boot.autoconfigure.EnableAutoConfigurationImportSelector.getCandidateConfigurations(EnableAutoConfigurationImportSelector.java:145) 
     at org.springframework.boot.autoconfigure.EnableAutoConfigurationImportSelector.selectImports(EnableAutoConfigurationImportSelector.java:84) 
     at org.springframework.context.annotation.ConfigurationClassParser.processDeferredImportSelectors(ConfigurationClassParser.java:481) 
     ... 14 common frames omitted 
org.springframework.beans.factory.BeanDefinitionStoreException: Failed to process import candidates for configuration class [pl.mypackage.Main]; nested exception is java.lang.IllegalArgumentException: No auto configuration classes found in META-INF/spring.factories. If you are using a custom packaging, make sure that file is correct. 
     at org.springframework.context.annotation.ConfigurationClassParser.processDeferredImportSelectors(ConfigurationClassParser.java:489) 
     at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:191) 
     at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:321) 
     at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:243) 
     at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:273) 
     at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:98) 
     at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:681) 
     at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:523) 
     at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122) 
     at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759) 
     at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:369) 
     at org.springframework.boot.SpringApplication.run(SpringApplication.java:313) 
     at org.springframework.boot.SpringApplication.run(SpringApplication.java:1185) 
     at org.springframework.boot.SpringApplication.run(SpringApplication.java:1174) 
     at pl.mypackage.Main.main(Main.java:39) 
Caused by: java.lang.IllegalArgumentException: No auto configuration classes found in META-INF/spring.factories. If you are using a custom packaging, make sure that file is correct. 
     at org.springframework.util.Assert.notEmpty(Assert.java:276) 
     at org.springframework.boot.autoconfigure.EnableAutoConfigurationImportSelector.getCandidateConfigurations(EnableAutoConfigurationImportSelector.java:145) 
     at org.springframework.boot.autoconfigure.EnableAutoConfigurationImportSelector.selectImports(EnableAutoConfigurationImportSelector.java:84) 
     at org.springframework.context.annotation.ConfigurationClassParser.processDeferredImportSelectors(ConfigurationClassParser.java:481) 
     ... 14 more 

Es sieht aus wie es nicht automatisch Konfigurationsklassen in META-INF/spring.factories gefunden hat. Wie füge ich diese Datei hinzu? Und was sollte der Inhalt dieser Datei sein?

+0

Wie haben Sie Ihr Fett Glas machen? –

+1

Ich hatte das selbe Problem, weil ich das 'Spring-Boot-Starter-Elternteil' aus meiner pom.xml entfernt habe und das Glas mit dem Assembly-Plugin gemacht habe, wie ich es gewohnt bin. Mea culpa. Die Verwendung von "Spring-Boot-Starter-Parent" funktioniert wie ein Zauber und findet automatisch die richtige Hauptklasse. –

Antwort

26

Ich hatte das gleiche Problem und löste es gerade.

Zuerst erzeugte ich das Fettglas mit der maven-assembly-plugin, die eine Datei namens mavenproject1-0.0.1-SNAPSHOT-jar-with-dependencies.jar erstellt. Diese Datei hat das gleiche Problem wie Sie, als ich versuchte, es auszuführen.

Ich denke, weil es eine Spring Boot-Anwendung ist, müssen Sie ihr Plugin verwenden. Ich habe meine Verpackung in die spring-boot-maven-plugin geändert und es erstellt zwei Dateien: mavenproject1-0.0.1-SNAPSHOT.jar und mavenproject1-0.0.1-SNAPSHOT.jar.original. Versuchen Sie einfach java -jar target/mavenproject1-0.0.1-SNAPSHOT.jar und es wird hoffentlich funktionieren. :-)

Als Referenz hier ist mein pom.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.company</groupId> 
    <artifactId>mavenproject1</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <packaging>jar</packaging> 
    <parent> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-parent</artifactId> 
     <version>1.4.0.RELEASE</version> 
     <relativePath/> 
     <!-- lookup parent from repository --> 
    </parent> 
    <properties> 
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
     <maven.compiler.source>1.8</maven.compiler.source> 
     <maven.compiler.target>1.8</maven.compiler.target> 
    </properties> 
    <dependencies> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-test</artifactId> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-web</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-configuration-processor</artifactId> 
      <optional>true</optional> 
     </dependency> 
     <dependency> 
      <groupId>com.company.common</groupId> 
      <artifactId>common-files</artifactId> 
      <version>0.0.1-SNAPSHOT</version> 
     </dependency> 
    </dependencies> 
    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-maven-plugin</artifactId> 
       <configuration> 
        <fork>true</fork> 
        <mainClass>${start-class}</mainClass> 
       </configuration> 
        <executions> 
        <execution> 
         <goals> 
         <goal>repackage</goal> 
         </goals> 
        </execution> 
       </executions> 
      </plugin> 
      <plugin> 
       <artifactId>maven-assembly-plugin</artifactId> 
       <version>2.2-beta-5</version> 
       <configuration> 
       <archive> 
        <manifest> 
        <addClasspath>true</addClasspath> 
        <mainClass>com.company.mavenproject1.MainClass</mainClass> 
        </manifest> 
       </archive> 
       <descriptorRefs> 
        <descriptorRef>jar-with-dependencies</descriptorRef> 
       </descriptorRefs> 
       </configuration> 
       <executions> 
       <execution> 
        <id>assemble-all</id> 
        <phase>package</phase> 
        <goals> 
        <goal>single</goal> 
        </goals> 
       </execution> 
       </executions> 
      </plugin> 
     </plugins> 
    </build> 
</project> 
+0

Es ist erwähnenswert, dass jar in pom.xml erforderlich ist. Ohne es können Sie die Anwendung noch in Ihrer IDE ausführen, aber .jar wird nicht funktionieren. – Rtoip

+0

Arbeitete für mich! Ich benutze Spring Boot 2.0 – shimatai

4

Diese Konfiguration funktioniert für mich. Ich meine JAR als Dienst ausführen, aber die Leitung ist:

javaw -jar MY_JAR.jar 

POM:

<properties> 
     <!-- Spring boot main class --> 
     <start-class>com.PATH_TO_MAIN.Main</start-class> 
</properties> 
... 
<plugin> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-maven-plugin</artifactId> 
</plugin> 

mit Frühlings-Boot nicht mehr notwendig ist, Montage-Plugin zu verwenden. Vergessen Sie nicht, Paket Ziel

Sie nennen könnte die Dokumentation Beispiel sehen: http://docs.spring.io/spring-boot/docs/current/reference/html/build-tool-plugins-maven-plugin.html

+0

Dies scheint nicht zu funktionieren, wenn die Feder-Anwendung nur eine andere Abhängigkeit in einem anderen Standalone-Jar ist. – displayname

2

Ich habe hinzugefügt, um diese Konfiguration in meinem pom und Problem behoben wurde.

<build> 
<plugins> 
<plugin> 
<groupId>org.springframework.boot</groupId> 
<artifactId>spring-boot-maven-plugin</artifactId> 
<version>1.5.2.RELEASE</version> 
<executions> 
<execution> 
<goals> 
<goal>repackage</goal> 
</goals> 
</execution> 
</executions> 
</plugin> 
</plugins> 

1
Caused by: java.lang.IllegalArgumentException: No auto configuration classes found in META-INF/spring.factories. If you are using a custom packaging, make sure that file is correct. 

Von oben scheint es, dass Ihr packageing nicht richtig gemacht wird. Ich weiß, dass ich zu spät bin, aber es könnte jemand anderem helfen.

Lösung

Bitte überprüfen Sie Ihre @SpringBootApplication Klasse shoud Basispaket alle über die anderen Klassen haben. Zum Beispiel, lassen Sie uns Ihre Klasse @SpringBootApplication in einem Paket com.sb.foo dann alle anderen Frühling Stereotyp Klassen sollte innerhalb com.sb.foo.xxx gehen, wo xxx kann alles sein. Es kann ein weiteres Unterpaket com.sb.foo.xxx.yyy sein. Dies ist eine Funktion von SpringBoot, um die automatische Konfiguration zu aktivieren. Diese automatische Konfiguration funktioniert gut mit IDEs wie Intellij oder Eclipse, selbst wenn Sie den Fehler gemacht haben.

Die Wahrscheinlichkeit eines solchen Problems besteht eher, wenn Sie kein Bauwerkzeug verwenden oder IDEs wie STS eclipse für die Entwicklung empfehlen.

1

Wenn Sie das Spring Boot-Plugin aus welchem ​​Grund auch immer nicht verwenden können, können Sie die folgende Datei in Ihre Anwendung einfügen.

https://github.com/spring-projects/spring-boot/blob/1.5.x/spring-boot-autoconfigure/src/main/resources/META-INF/spring.factories

Diese für das Frühjahr Boot 1.x funktioniert und ist hilfreich, wenn Sie Frühjahr Managed Beans in einem REPL verwenden möchten: Es sollte src/main/resources/META-INF/spring.factories aufgerufen werden.

+0

Die Datei existiert nicht mehr. – peterh

+0

@peterh ab welcher Version? Es ist ab 1.5.4 vorhanden. – cscan

+0

Ich habe versucht zu sagen, dass der Link zu einem 404 führt :-) – peterh

0

spring.factories wird von der AutoConfigurationImportSelector-Klasse in Spring-Boot-Autoconfigure geladen. Dadurch wird der Context-Klassenlader für alle Ressourcen vom Typ META-INF/spring.factories ausgeführt.

Um den Spring-Boot nach dem Schattieren des Jars zu starten, habe ich das gleiche simuliert, indem ich den Inhalt aller verfügbaren spring.factories-Dateien in eine einzige spring.factories-Datei im META-INF-Ordner meines eigenen Jars zusammengeführt habe.

Hier ist meine aktuelle spring.factories Datei:

# Initializers 
org.springframework.context.ApplicationContextInitializer=\ 
org.springframework.boot.autoconfigure.SharedMetadataReaderFactoryContextInitializer,\ 
org.springframework.boot.autoconfigure.logging.AutoConfigurationReportLoggingInitializer 

# Application Listeners 
org.springframework.context.ApplicationListener=\ 
org.springframework.boot.autoconfigure.BackgroundPreinitializer 

# Auto Configuration Import Listeners 
org.springframework.boot.autoconfigure.AutoConfigurationImportListener=\ 
org.springframework.boot.autoconfigure.condition.ConditionEvaluationReportAutoConfigurationImportListener 

# Auto Configuration Import Filters 
org.springframework.boot.autoconfigure.AutoConfigurationImportFilter=\ 
org.springframework.boot.autoconfigure.condition.OnClassCondition 

# Auto Configure 
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\ 
org.springframework.boot.autoconfigure.admin.SpringApplicationAdminJmxAutoConfiguration,\ 
org.springframework.boot.autoconfigure.aop.AopAutoConfiguration,\ 
org.springframework.boot.autoconfigure.amqp.RabbitAutoConfiguration,\ 
org.springframework.boot.autoconfigure.batch.BatchAutoConfiguration,\ 
org.springframework.boot.autoconfigure.cache.CacheAutoConfiguration,\ 
org.springframework.boot.autoconfigure.cassandra.CassandraAutoConfiguration,\ 
org.springframework.boot.autoconfigure.cloud.CloudAutoConfiguration,\ 
org.springframework.boot.autoconfigure.context.ConfigurationPropertiesAutoConfiguration,\ 
org.springframework.boot.autoconfigure.context.MessageSourceAutoConfiguration,\ 
org.springframework.boot.autoconfigure.context.PropertyPlaceholderAutoConfiguration,\ 
org.springframework.boot.autoconfigure.couchbase.CouchbaseAutoConfiguration,\ 
org.springframework.boot.autoconfigure.dao.PersistenceExceptionTranslationAutoConfiguration,\ 
org.springframework.boot.autoconfigure.data.cassandra.CassandraDataAutoConfiguration,\ 
org.springframework.boot.autoconfigure.data.cassandra.CassandraRepositoriesAutoConfiguration,\ 
org.springframework.boot.autoconfigure.data.couchbase.CouchbaseDataAutoConfiguration,\ 
org.springframework.boot.autoconfigure.data.couchbase.CouchbaseRepositoriesAutoConfiguration,\ 
org.springframework.boot.autoconfigure.data.elasticsearch.ElasticsearchAutoConfiguration,\ 
org.springframework.boot.autoconfigure.data.elasticsearch.ElasticsearchDataAutoConfiguration,\ 
org.springframework.boot.autoconfigure.data.elasticsearch.ElasticsearchRepositoriesAutoConfiguration,\ 
org.springframework.boot.autoconfigure.data.jpa.JpaRepositoriesAutoConfiguration,\ 
org.springframework.boot.autoconfigure.data.ldap.LdapDataAutoConfiguration,\ 
org.springframework.boot.autoconfigure.data.ldap.LdapRepositoriesAutoConfiguration,\ 
org.springframework.boot.autoconfigure.data.mongo.MongoDataAutoConfiguration,\ 
org.springframework.boot.autoconfigure.data.mongo.MongoRepositoriesAutoConfiguration,\ 
org.springframework.boot.autoconfigure.data.neo4j.Neo4jDataAutoConfiguration,\ 
org.springframework.boot.autoconfigure.data.neo4j.Neo4jRepositoriesAutoConfiguration,\ 
org.springframework.boot.autoconfigure.data.solr.SolrRepositoriesAutoConfiguration,\ 
org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration,\ 
org.springframework.boot.autoconfigure.data.redis.RedisRepositoriesAutoConfiguration,\ 
org.springframework.boot.autoconfigure.data.rest.RepositoryRestMvcAutoConfiguration,\ 
org.springframework.boot.autoconfigure.data.web.SpringDataWebAutoConfiguration,\ 
org.springframework.boot.autoconfigure.elasticsearch.jest.JestAutoConfiguration,\ 
org.springframework.boot.autoconfigure.freemarker.FreeMarkerAutoConfiguration,\ 
org.springframework.boot.autoconfigure.gson.GsonAutoConfiguration,\ 
org.springframework.boot.autoconfigure.h2.H2ConsoleAutoConfiguration,\ 
org.springframework.boot.autoconfigure.hateoas.HypermediaAutoConfiguration,\ 
org.springframework.boot.autoconfigure.hazelcast.HazelcastAutoConfiguration,\ 
org.springframework.boot.autoconfigure.hazelcast.HazelcastJpaDependencyAutoConfiguration,\ 
org.springframework.boot.autoconfigure.info.ProjectInfoAutoConfiguration,\ 
org.springframework.boot.autoconfigure.integration.IntegrationAutoConfiguration,\ 
org.springframework.boot.autoconfigure.jackson.JacksonAutoConfiguration,\ 
org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration,\ 
org.springframework.boot.autoconfigure.jdbc.JdbcTemplateAutoConfiguration,\ 
org.springframework.boot.autoconfigure.jdbc.JndiDataSourceAutoConfiguration,\ 
org.springframework.boot.autoconfigure.jdbc.XADataSourceAutoConfiguration,\ 
org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration,\ 
org.springframework.boot.autoconfigure.jms.JmsAutoConfiguration,\ 
org.springframework.boot.autoconfigure.jmx.JmxAutoConfiguration,\ 
org.springframework.boot.autoconfigure.jms.JndiConnectionFactoryAutoConfiguration,\ 
org.springframework.boot.autoconfigure.jms.activemq.ActiveMQAutoConfiguration,\ 
org.springframework.boot.autoconfigure.jms.artemis.ArtemisAutoConfiguration,\ 
org.springframework.boot.autoconfigure.flyway.FlywayAutoConfiguration,\ 
org.springframework.boot.autoconfigure.groovy.template.GroovyTemplateAutoConfiguration,\ 
org.springframework.boot.autoconfigure.jersey.JerseyAutoConfiguration,\ 
org.springframework.boot.autoconfigure.jooq.JooqAutoConfiguration,\ 
org.springframework.boot.autoconfigure.kafka.KafkaAutoConfiguration,\ 
org.springframework.boot.autoconfigure.ldap.embedded.EmbeddedLdapAutoConfiguration,\ 
org.springframework.boot.autoconfigure.ldap.LdapAutoConfiguration,\ 
org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration,\ 
org.springframework.boot.autoconfigure.mail.MailSenderAutoConfiguration,\ 
org.springframework.boot.autoconfigure.mail.MailSenderValidatorAutoConfiguration,\ 
org.springframework.boot.autoconfigure.mobile.DeviceResolverAutoConfiguration,\ 
org.springframework.boot.autoconfigure.mobile.DeviceDelegatingViewResolverAutoConfiguration,\ 
org.springframework.boot.autoconfigure.mobile.SitePreferenceAutoConfiguration,\ 
org.springframework.boot.autoconfigure.mongo.embedded.EmbeddedMongoAutoConfiguration,\ 
org.springframework.boot.autoconfigure.mongo.MongoAutoConfiguration,\ 
org.springframework.boot.autoconfigure.mustache.MustacheAutoConfiguration,\ 
org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration,\ 
org.springframework.boot.autoconfigure.reactor.ReactorAutoConfiguration,\ 
org.springframework.boot.autoconfigure.security.SecurityAutoConfiguration,\ 
org.springframework.boot.autoconfigure.security.SecurityFilterAutoConfiguration,\ 
org.springframework.boot.autoconfigure.security.FallbackWebSecurityAutoConfiguration,\ 
org.springframework.boot.autoconfigure.security.oauth2.OAuth2AutoConfiguration,\ 
org.springframework.boot.autoconfigure.sendgrid.SendGridAutoConfiguration,\ 
org.springframework.boot.autoconfigure.session.SessionAutoConfiguration,\ 
org.springframework.boot.autoconfigure.social.SocialWebAutoConfiguration,\ 
org.springframework.boot.autoconfigure.social.FacebookAutoConfiguration,\ 
org.springframework.boot.autoconfigure.social.LinkedInAutoConfiguration,\ 
org.springframework.boot.autoconfigure.social.TwitterAutoConfiguration,\ 
org.springframework.boot.autoconfigure.solr.SolrAutoConfiguration,\ 
org.springframework.boot.autoconfigure.thymeleaf.ThymeleafAutoConfiguration,\ 
org.springframework.boot.autoconfigure.transaction.TransactionAutoConfiguration,\ 
org.springframework.boot.autoconfigure.transaction.jta.JtaAutoConfiguration,\ 
org.springframework.boot.autoconfigure.validation.ValidationAutoConfiguration,\ 
org.springframework.boot.autoconfigure.web.DispatcherServletAutoConfiguration,\ 
org.springframework.boot.autoconfigure.web.EmbeddedServletContainerAutoConfiguration,\ 
org.springframework.boot.autoconfigure.web.ErrorMvcAutoConfiguration,\ 
org.springframework.boot.autoconfigure.web.HttpEncodingAutoConfiguration,\ 
org.springframework.boot.autoconfigure.web.HttpMessageConvertersAutoConfiguration,\ 
org.springframework.boot.autoconfigure.web.MultipartAutoConfiguration,\ 
org.springframework.boot.autoconfigure.web.ServerPropertiesAutoConfiguration,\ 
org.springframework.boot.autoconfigure.web.WebClientAutoConfiguration,\ 
org.springframework.boot.autoconfigure.web.WebMvcAutoConfiguration,\ 
org.springframework.boot.autoconfigure.websocket.WebSocketAutoConfiguration,\ 
org.springframework.boot.autoconfigure.websocket.WebSocketMessagingAutoConfiguration,\ 
org.springframework.boot.autoconfigure.webservices.WebServicesAutoConfiguration 

# Failure analyzers 
org.springframework.boot.diagnostics.FailureAnalyzer=\ 
org.springframework.boot.autoconfigure.diagnostics.analyzer.NoSuchBeanDefinitionFailureAnalyzer,\ 
org.springframework.boot.autoconfigure.jdbc.DataSourceBeanCreationFailureAnalyzer,\ 
org.springframework.boot.autoconfigure.jdbc.HikariDriverConfigurationFailureAnalyzer 

# Template availability providers 
org.springframework.boot.autoconfigure.template.TemplateAvailabilityProvider=\ 
org.springframework.boot.autoconfigure.freemarker.FreeMarkerTemplateAvailabilityProvider,\ 
org.springframework.boot.autoconfigure.mustache.MustacheTemplateAvailabilityProvider,\ 
org.springframework.boot.autoconfigure.groovy.template.GroovyTemplateAvailabilityProvider,\ 
org.springframework.boot.autoconfigure.thymeleaf.ThymeleafTemplateAvailabilityProvider,\ 
org.springframework.boot.autoconfigure.web.JspTemplateAvailabilityProvider