我正在用 spring-boot
创建一个项目 .
Spring启动maven结构要求它具有定义为 spring-boot-starter-parent
的父级 .
我有一种情况,我想将我的应用程序打包为一个多模块结构,我在其中定义包含与地理相关的功能的模块 .
像这样的东西,每个模块都有一个 jar 包装,
parent Pom
|
|-----------Core module
|
|-----------India Module
|
|----------Africa Module
|
|--------- Europe Module
现在,我可以根据地理位置使用maven配置文件打包我的应用程序,其中在印度配置文件中仅包含和打包核心模块和印度模块 .
如何使用Spring引导来实现它,其中我的父级已定义为 spring-boot-starter-parent
?
3 回答
有两种方法可以做到,
模块poms将root pom作为父级 . POM添加的核心模块依赖于其他模块 . 它还有'spring-boot-maven-plugin'来制作胖 jar .
spring上下文以java -jar Core_xxx.release.jar启动
当然,如果你有组织明智的父母POM,那么第一选择会更合适 .
现在,您可以使用官方Spring guidline解决该问题并创建Spring Boot多模块项目 . 只需按照说明https://spring.io/guides/gs/multi-module/
我不是特别了解Spring Boot .
但是通常使用Spring可以通过常见的配置包来完成 . 因此,在您的主应用/配置中,您执行以下操作:
然后,您可以将模块特定的配置放在每个模块的引导程序包中 . 所以只需创建一个com.example.common.boostrap.AsiaModule和com.example.common.bootstrap.EuropeModule作为Spring配置,你就是好的 .