title: SpringBoot - making jar files - No auto configuration classes found in META-INF/spring.factories
body: <p>Everything was working fine when starting my app using <a href="https://en.wikipedia.org/wiki/IntelliJ_IDEA" rel="noreferrer">IntelliJ</a>. But when I made a fat jar and executed it with</p>
  
  <pre><code>java -jar myapp.jar
  </code></pre>
  
  <p>I got this:</p>
  
  <pre><code>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
  </code></pre>
  
  <p>It looks like it doesn't found auto configuration classes in <code>META-INF/spring.factories</code>. How to add it, and what should be the content of this file?</p>