META-INF / spring.factories中缺少spring autoconfiguration类

时间:2017-04-24 11:35:19

标签: java spring maven apache-spark

我试图创建基于spring的应用程序但是在构建之后我在初始化spring上下文时遇到异常 - > No auto configuration classes found in META-INF/spring.factories。 我在应用程序中大量使用spark,我被迫使用maven-assembly-plugin打包我的jar(否则我无法运行spark工作)。

我的主要课程样本:

@SpringBootApplication
@EnableAutoConfiguration
public class MyMainClass {
    public static void main(String[] args) {

        ConfigurableApplicationContext ctx = new SpringApplicationBuilder(MyMainClass.class).web(false)
                                                                                                   .run(args);
        SparkJob job = ctx.getBean(SparkJob.class);
        job.prepareJobAndRun();
        ctx.close();
    }
}

当我添加

org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
org.mypackage.MyMainClass

一切都按预期工作,但我不想手动添加它们。 没有spring-boot-maven-plugin的任何机会让这项工作?

1 个答案:

答案 0 :(得分:5)

我能够发现,您可以将自己的META-INF/spring.factories添加到src/main/resources。然后将这个自定义的spring.factories打包到jar中。经过测试,工作。