基本上,我想要有类似以下结构的东西:
├── ...
├── 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