基本上,我想要有类似以下结构的东西:
├── ...
├── 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?
└── ...
dogs
,cats
并且birds
模块具有core
(或基本/通用)模块作为依赖项。对于 Gradle,它是compile project(':core')
.dogs
,cats
和birds
模块没有任何关系。唯一的共同特点是core
项目。
我计划将默认根src
目录设置为空,但如果可能的话,我也可以在此处使用application.properties
,application-{profile}.properties
进行一些初始化。
├── ...
└── src
└── main
├── java
└── resources
└── application.properties
├── application-dev.properties
├── application-test.properties
└── application-prod.properties
如何以这种方式为环境配置文件加载属性,以便下一个文件中的属性可以覆盖前一个文件中的属性?
例如,core
← dogs
:
- 根-application.properties
- 根应用程序prod.properties
- 核心应用程序属性
- 核心应用程序prod.properties
- 狗-application.properties
- 狗-应用程序-prod.properties