一尘不染

Spring Boot从依赖项继承application.properties

spring

设我有5个Spring Boot项目。它们都对带有某些共享/公共类的Spring Boot项目No.6具有Maven依赖性。5个独立项目在每个application.properties中分配了很多通用属性,我想对其进行抽象并将其移至通用项目。总体看起来像这样:

                                            Project 1 (app.properties)
Common Project (app-common.properties) <--- Project 2 (app.properties)
                                            Project 3 (app.properties)...

当前的问题是app-common.properties在project1.jar / lib / common-project.jar中,而app-common.properties在启动时显然未加载。

有没有办法从依赖项扩展它?

CommonProject主类如下所示:

@SpringBootApplication
public class CommonApplication extends SpringBootServletInitializer {

    protected static void run(SpringApplication application, String[] args) {
        application.run(args);
    }
}

Project1主类如下所示:

public class Project1 extends CommonApplication {

    public static void main(String[] args) {
        run(new SpringApplication(Project1.class), args);
    }
}

阅读 1308

收藏
2020-04-16

共1个答案

一尘不染

使用PropertySource批注并为你的应用程序提供两个来源:

@PropertySources({
        @PropertySource("classpath:app-common.properties"),
        @PropertySource("classpath:app.properties")
    })
2020-04-16