我正在尝试创建基于 spring 的应用程序,但在构建之后我在初始化 spring 上下文时遇到异常 -> 在 META-INF/spring.factories 中找不到自动配置类
。
我在我的应用程序中大量使用 spark,我被迫使用 maven-assembly-plugin
来打包我的 jar(否则我无法运行 spark 作业)。
我的主要类(class)示例:
@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
的情况下完成这项工作?
最佳答案
我发现,您可以将自己的 META-INF/spring.factories
添加到 src/main/resources
。这个自定义的 spring.factories 将被打包到 jar 中。已测试,正常工作。
关于java - META-INF/spring.factories 中缺少 spring 自动配置类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43586999/