Gradle:具有概要文件支持的多项目构建的多个application.properties

时间:2018-11-05 19:44:49

标签: java spring-boot gradle properties application.properties

基本上,我希望具有以下结构:

├── ...
├── core-module
│   ├── build.gradle
│   └── src
│       ├── main
│       |   └── java
│       |   └── resources
│       |       └── application.properties
│       |       ├── application-dev.properties
│       |       ├── application-test.properties 
│       |       └── application-prod.properties
│       └── test
│           └── java
├── dogs-module
│   ├── build.gradle
│   └── src
│       ├── main
│       |   └── java
│       |   └── resources
│       |       └── application.properties
│       |       ├── application-dev.properties
│       |       ├── application-test.properties 
│       |       └── application-prod.properties
│       └── test
│           └── java
├── cats-module
│   ├── build.gradle
│   └── src
│       ├── main
│       |   └── java
│       |   └── resources
│       |       └── application.properties
│       |       ├── application-dev.properties
│       |       ├── application-test.properties 
│       |       └── application-prod.properties
│       └── test
│           └── java
├── birds-module
│   ├── build.gradle
│   └── src
│       ├── main
│       |   └── java
│       |   └── resources
│       |       └── application.properties
│       |       ├── application-dev.properties
│       |       ├── application-test.properties 
│       |       └── application-prod.properties
│       └── test
│           └── java
├── src?
└── ...
  • dogscatsbirds模块具有core基本/通用)模块作为依赖项。对于Gradle,它是compile project(':core')
  • dogscatsbirds模块之间没有任何关联。唯一的共同特征是core项目。

我计划将默认的根src目录设置为空,但如果可能的话,我也可以在此处使用application.propertiesapplication-{profile}.properties进行一些初始化。

├── ...
└── src
    └── main
        ├── java
        └── resources
            └── application.properties
            ├── application-dev.properties
            ├── application-test.properties 
            └── application-prod.properties

如何以这种方式为环境配置文件加载属性,以便下一个文件中的属性可以覆盖上一个文件中的属性?

例如,coredogs

  • root-application.properties
  • root-application-prod.properties
  • core-application.properties
  • core-application-prod.properties
  • dogs-application.properties
  • dogs-application-prod.properties

0 个答案:

没有答案